Skip to main content
Version: 0.3.0

Custom Apps

Custom apps allow you to create your own integrations with services and systems that aren't available in the standard marketplace. By building custom app integrations, you can connect AnchorAutomate to proprietary systems, specialized tools, or any service.

Overview

Custom apps enable:

  • Proprietary System Integration: Connect to your internal systems and databases
  • Specialized Tool Access: Integrate with niche or industry-specific applications
  • Custom Workflow Support: Build integrations tailored to your specific processes
  • API Wrapper Creation: Simplify complex APIs for agent use
  • Legacy System Modernization: Bring older systems into modern automation workflows

Creating a Custom App

Step 1: Access App Creation

  1. Navigate to Your Agent: Go to the agent where you want to add the custom app
  2. Click "Add App": Open the app marketplace interface
  3. Select "Create App": Choose the option to create a new custom app
  4. Begin Configuration: Start the custom app creation process

Step 2: Basic App Information

App Name:

  • Purpose: Provide a clear, descriptive name for your custom app
  • Best Practices: Use descriptive names that indicate the service or system
  • Examples:
    • "Company CRM Integration"
    • "Internal Inventory System"
    • "Custom Analytics Dashboard"
    • "Legacy Database Connector"

Short Description:

  • Purpose: Brief summary of what the app does
  • Length: Keep it concise, typically 1-2 sentences
  • Focus: Highlight the main functionality and value
  • Examples:
    • "Connects to our internal customer database for order processing"
    • "Integrates with the company's proprietary inventory management system"
    • "Provides access to custom analytics and reporting tools"

Full Description:

  • Purpose: Comprehensive explanation of the app's capabilities
  • Format: Markdown supported for rich formatting
  • Content: Include detailed functionality, use cases, and benefits
  • Structure: Use headers, lists, and formatting for clarity

Example Full Description:

# Internal CRM Integration

This custom app provides seamless integration with our proprietary customer relationship management system.

## Features

- **Customer Data Access**: Read and update customer information
- **Order Management**: Create, modify, and track customer orders
- **Reporting**: Generate custom reports and analytics
- **Workflow Automation**: Automate routine CRM tasks

## Use Cases

- Automated customer onboarding
- Order processing and fulfillment
- Customer service ticket management
- Sales pipeline tracking

## Requirements

- Valid CRM API credentials
- Network access to internal CRM servers
- Appropriate user permissions for data access

Version:

  • Purpose: Track different versions of your custom app
  • Format: Use semantic versioning (e.g., 1.0.0, 1.2.3)
  • Best Practices: Increment versions when making changes
  • Examples: "1.0.0", "2.1.0", "1.0.0-beta"

Icon URL:

Step 3: MCP Configuration

MCP Type Selection:

Remote/HTTP:

  • Description: Connect to services via HTTP/HTTPS APIs
  • Use Cases: Web APIs, cloud services, REST endpoints
  • Availability: Available on all plans
  • Benefits: Easy to set up, widely compatible, cloud-friendly

Local/STDIO (Enterprise Only):

  • Description: Connect to local command-line tools and scripts
  • Use Cases: Local databases, command-line utilities, custom scripts
  • Availability: Enterprise plans only
  • Benefits: Direct system access, custom scripting, legacy system integration

MCP URL (for Remote/HTTP):

MCP Command (for Local/STDIO):

  • Purpose: Command to execute your local MCP server
  • Format: Full command with arguments
  • Examples:
    • "python /opt/company/mcp-server.py"
    • "/usr/local/bin/custom-mcp-server --config /etc/mcp.conf"
    • "node /home/user/mcp-server/index.js --port 3000"

Step 4: App Settings Configuration

App Settings define the configuration parameters that your MCP server requires.

Setting Fields:

Display Name:

  • Purpose: User-friendly name for the setting
  • Examples: "API Token", "Database URL", "Service Endpoint"

Description:

  • Purpose: Explain what this setting is for and how to obtain it
  • Examples:
    • "Your API token from the service dashboard"
    • "The URL of your database server"
    • "The endpoint URL for your custom service"

Required:

  • Purpose: Indicate whether this setting is mandatory
  • Options: Yes/No checkbox
  • Impact: Required settings must be provided before the app can be used

Type:

  • Text: Free-form text input
  • Boolean: True/false checkbox
  • Number: Numeric input with validation
  • Select: Dropdown with predefined options

Default:

  • Purpose: Provide a default value for the setting
  • Use Cases: Common values, example formats, placeholder text
  • Examples: "https://api.example.com", "3000", "production"

Add Options (for Select Type):

  • Purpose: Define the available choices for select-type settings
  • Format: List of option values and display names
  • Examples:
    • Value: "prod", Display: "Production"
    • Value: "staging", Display: "Staging Environment"
    • Value: "dev", Display: "Development"

Example App Settings Configuration:

Setting 1:
Display Name: API Token
Description: Your service API token from the dashboard
Required: Yes
Type: Text
Default: (empty)

Setting 2:
Display Name: Environment
Description: Which environment to connect to
Required: Yes
Type: Select
Default: production
Options:
- Value: production, Display: Production
- Value: staging, Display: Staging
- Value: development, Display: Development

Setting 3:
Display Name: Enable Logging
Description: Enable detailed logging for debugging
Required: No
Type: Boolean
Default: false

Setting 4:
Display Name: Timeout (seconds)
Description: Request timeout in seconds
Required: No
Type: Number
Default: 30

Step 5: Services Configuration

Services define the tools and resources that your MCP server provides to agents.

Service Types:

Tools:

  • Purpose: Actions that agents can perform
  • Examples: "create_customer", "send_email", "generate_report"
  • Configuration: Define tool names, descriptions, and parameters

Resources:

  • Purpose: Data sources that agents can access
  • Examples: "customer_database", "file_storage", "analytics_data"
  • Configuration: Define resource names, types, and access methods

Service Configuration Fields:

Service Name:

  • Purpose: Unique identifier for the service
  • Format: Use descriptive, lowercase names with underscores
  • Examples: "customer_management", "order_processing", "report_generation"

Service Type:

  • Tool: Executable actions
  • Resource: Data sources or information repositories

Description:

  • Purpose: Explain what this service provides
  • Detail Level: Include parameters, return values, and use cases
  • Examples:
    • "Creates new customer records in the CRM system"
    • "Provides access to order history and status information"
    • "Generates custom reports based on specified criteria"

Parameters (for Tools):

  • Purpose: Define the inputs required for tool execution
  • Format: Parameter name, type, description, and whether required
  • Examples:
    • Name: "customer_email", Type: "string", Required: true
    • Name: "order_amount", Type: "number", Required: true
    • Name: "include_details", Type: "boolean", Required: false

Example Services Configuration:

Service 1:
Name: create_customer
Type: Tool
Description: Creates a new customer record in the CRM
Parameters:
- name: string, required, Customer's full name
- email: string, required, Customer's email address
- phone: string, optional, Customer's phone number
- company: string, optional, Customer's company name

Service 2:
Name: customer_database
Type: Resource
Description: Access to customer information and history
Access Methods:
- search: Search customers by name, email, or company
- get: Retrieve specific customer by ID
- list: List customers with pagination

Service 3:
Name: generate_report
Type: Tool
Description: Generates custom reports from CRM data
Parameters:
- report_type: string, required, Type of report to generate
- date_range: string, required, Date range for the report
- format: string, optional, Output format (PDF, CSV, JSON)

Next Steps

After creating your custom app:

Advanced Resources