MCP Server Documentation
Growth LayerMCP
als-growth-layer v1.0.0
Connection
Streamable HTTP MCP server. Send JSON-RPC 2.0 requests via POST.
| Endpoint | POST /api/mcp |
| Content-Type | application/json |
| Accept | application/json, text/event-stream |
| Authentication | Authorization: Bearer alg_<your_api_key> |
Get your API key from the Settings page after creating an account.
Protocol Flow
- 1Send
initializeto get server capabilities - 2Send
notifications/initializedto acknowledge - 3Send
tools/listto discover available tools - 4Send
tools/callto invoke a tool (requires auth)
Client Configuration
Add this to your MCP client (Claude Desktop, Cursor, or any spec-compliant client):
{
"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.
| Parameter | Type | Req | Description |
|---|---|---|---|
| string | Yes | Lead's email address | |
| name | string | No | Lead's full name |
| company | string | No | Lead's company |
| source | string | No | How the lead was sourced (e.g., referral, organic) |
| channel | string | No | Channel used (e.g., content, paid, community, partner) |
| audienceSegment | string | No | Target audience segment |
list_leads
List your leads with optional filters. Returns only leads registered by the authenticated operator.
| Parameter | Type | Req | Description |
|---|---|---|---|
| status | string | No | Filter by lead statusValues: registered, signed_up, activated, converted, expanded, churned, expired |
| limit | number | No | Max results to return (default 20, max 200) |
get_lead
Get detailed information about a specific lead including its full event chain history.
| Parameter | Type | Req | Description |
|---|---|---|---|
| leadId | string | Yes | The 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.
| Parameter | Type | Req | Description |
|---|---|---|---|
| instructionType | string | Yes | Type of modification to applyValues: translate, rewrite_audience, rewrite_tone, color_scheme, custom |
| instructionText | string | Yes | Instructions for the modification, e.g. 'translate to Spanish' or 'rewrite for enterprise CTOs' (max 500 chars) |
| expiresInDays | number | No | Auto-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.
| Parameter | Type | Req | Description |
|---|---|---|---|
| status | string | No | Filter by variant statusValues: pending_approval, active, revoked, expired |
| limit | number | No | Max 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
\-> expiredIn production, transitions are triggered by verified events in your system.
Error Codes
| Code | Meaning |
|---|---|
| -32700 | Parse error (invalid JSON) |
| -32600 | Invalid JSON-RPC request |
| -32601 | Method or tool not found |
| -32602 | Invalid or missing parameters |
| -32603 | Internal server error |
| -32001 | Authentication failed (missing or invalid API key) |
| -32002 | Forbidden (operator not active or motion disallowed) |
| -32003 | Resource 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.