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
- Navigate to Your Agent: Go to the agent where you want to add the custom app
- Click "Add App": Open the app marketplace interface
- Select "Create App": Choose the option to create a new custom app
- 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:
- Purpose: Visual representation of your custom app
- Format: URL to an image file (PNG, JPG, SVG recommended)
- Size: Recommended 64x64 pixels or larger
- Examples:
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):
- Purpose: Endpoint URL for your HTTP-based integration
- Format: Full HTTP/HTTPS URL
- Examples:
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:
