MCP Server Documentation

Growth LayerMCP

als-growth-layer v1.0.0

Connection

Streamable HTTP MCP server. Send JSON-RPC 2.0 requests via POST.

EndpointPOST /api/mcp
Content-Typeapplication/json
Acceptapplication/json, text/event-stream
AuthenticationAuthorization: Bearer alg_<your_api_key>

Get your API key from the Settings page after creating an account.

Protocol Flow

  1. 1Send initialize to get server capabilities
  2. 2Send notifications/initialized to acknowledge
  3. 3Send tools/list to discover available tools
  4. 4Send tools/call to invoke a tool (requires auth)

Client Configuration

Add this to your MCP client (Claude Desktop, Cursor, or any spec-compliant client):

MCP Client Config
{
  "mcpServers": {
    "als-growth-layer": {
      "url": "https://agentledstrategy.com/api/mcp",
      "headers": {
        "Authorization": "Bearer alg_your_api_key"
      }
    }
  }
}

Example: Initialize

// Request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "initialize",
  "params": {
    "protocolVersion": "2025-03-26",
    "clientInfo": { "name": "my-agent", "version": "1.0.0" }
  }
}

// Response
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "protocolVersion": "2025-03-26",
    "capabilities": { "tools": {} },
    "serverInfo": { "name": "als-growth-layer", "version": "1.0.0" }
  }
}

Example: Call a Tool

POST /api/mcp
Authorization: Bearer alg_your_api_key
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "register_lead",
    "arguments": {
      "email": "jane@example.com",
      "name": "Jane Doe",
      "company": "Acme Corp",
      "source": "referral",
      "channel": "partner"
    }
  }
}

Available Tools (6)

Lead Management

register_lead

Register a new lead in the growth layer. The lead will be tracked through the lead funnel: registered, signed_up, activated, converted.

ParameterTypeReqDescription
emailstringYesLead's email address
namestringNoLead's full name
companystringNoLead's company
sourcestringNoHow the lead was sourced (e.g., referral, organic)
channelstringNoChannel used (e.g., content, paid, community, partner)
audienceSegmentstringNoTarget audience segment

list_leads

List your leads with optional filters. Returns only leads registered by the authenticated operator.

ParameterTypeReqDescription
statusstringNoFilter by lead statusValues: registered, signed_up, activated, converted, expanded, churned, expired
limitnumberNoMax results to return (default 20, max 200)

get_lead

Get detailed information about a specific lead including its full event chain history.

ParameterTypeReqDescription
leadIdstringYesThe UUID of the lead to retrieve

Outcomes

observe_outcomes

Get aggregated outcome statistics for your growth operations. Returns counts by funnel stage, activation/conversion rates, and recent events.

No parameters required.

Page Variants

create_page_variant

Create a variant of the /book landing page with modified copy, translation, or color scheme. The variant will be generated using AI and accessible at a unique URL.

ParameterTypeReqDescription
instructionTypestringYesType of modification to applyValues: translate, rewrite_audience, rewrite_tone, color_scheme, custom
instructionTextstringYesInstructions for the modification, e.g. 'translate to Spanish' or 'rewrite for enterprise CTOs' (max 500 chars)
expiresInDaysnumberNoAuto-expire the variant after N days (1-365)

list_page_variants

List page variants created by this operator. Shows view counts, lead counts, and status for each variant.

ParameterTypeReqDescription
statusstringNoFilter by variant statusValues: pending_approval, active, revoked, expired
limitnumberNoMax results to return (default 20, max 50)

Funnel Stages

Leads progress through the funnel. Each transition creates an immutable event.

registered -> signed_up -> activated -> converted -> expanded
                                                 \-> churned
                                                 \-> expired

In production, transitions are triggered by verified events in your system.

Error Codes

CodeMeaning
-32700Parse error (invalid JSON)
-32600Invalid JSON-RPC request
-32601Method or tool not found
-32602Invalid or missing parameters
-32603Internal server error
-32001Authentication failed (missing or invalid API key)
-32002Forbidden (operator not active or motion disallowed)
-32003Resource not found

Rate Limits

Each operator has a per-month rate limit configured in their operator profile. The default is 50 actions per month. Rate limits are enforced on lead registration and other write operations. Read operations (list, get, observe) are not rate-limited.

Authentication

All tools/call requests require a valid API key in the Authorization header. The initialize and tools/list methods work without authentication for discovery purposes.

API keys are scoped to a single operator. Each operator can only access their own leads, outcomes, and variants. Cross-operator data access is not possible.