| What | Where | How | Notes |
|---|---|---|---|
| Interactive Hypothesis Builder | When creating a new campaign idea. | Helps users create a campaign hypotheses through an interactive and personalised chat interface. See the campaign idea guide. | Uses GPT-4o. Stores in conversations and conversation_messages tables. Temperature = 1.0. |
| Campaign Idea Scoring | In ideas overview table | Automatically scores campaign ideas. For more information see the scoring guide. | Triggered on the IdeaSubmitted event. Temperature = 0.7. |
| Campaign Channel Categorisation | N/A, see categorisation guide | Uses campaign name and description to automatically classify campaigns into campaign channels (SEO, Paid, Sales etc) | Adds channel_id to the campaign. Triggered on IdeaSubmitted event. |
| Build Assist (previously Design Considerations) | In the build section when editing a campaign | Provides implementation guidance for your campaign. For more information see the build assist guide. | Dispatched as a background job after idea creation. |
| Campaign Summaries | In email notifications | Auto-generates a summary based on the latest campaign information for email notifications | Use the summary field. Triggered by all stage changes. |
Triggers & Actions
| Event | Triggered Actions |
|---|---|
| n/a | Interactive Hypothesis Builder |
| IdeaSubmitted | Idea Scoring, Channel Categorisations, Summary |
| ExperimentCreated | Build Assist, Summary |
| ExperimentStarted | Summary |
| ExperimentMovedToAnalysing | Summary |
| ExperimentCompleted | Summary |
Additional notes
- Currently all AI features use GPT-4o
- AI processing happens via queued jobs/listeners for performance
- All prompts are in the chat_gpt_queries table
AI strategy
1 Core functionality
For all core AI functionality within Growth Method (https://docs.growthmethod.com/dev/ai) we use PrismPHP. There is nothing cutting edge here that requires us to be closer to the model providers. Prism is a Laravel-specific solution that allows us to switch model providers relatively easily should we need to.2 MCP Server
For Growth Method MCP server functionality we use the Laravel MCP server. This functionality is standardised and Laravel MCP is a well-maintained and widely used first-party solution. This solves the analytics use-case where Claude/ChatGPT is the MCP client (e.g. “get conversion data for the /pricing page from the posthog mcp server then add to the ‘december pricing page test’ campaign in growth method”). See https://help.openai.com/en/articles/11487775-connectors-in-chatgpt and https://support.claude.com/en/articles/11175166-getting-started-with-custom-connectors-using-remote-mcp3 MCP Client
For Growth Method MCP client functionality, using Claude MCP connector. MCP client functionality is less-well standardised with both model providers and third-party packages hence being closer to a model provider (rather than using a 3rd party package, such as Prism Relay) has benefits. This brings dependency risk by going with a single provider, but it’s isolated to just this mcp client use-case and means we benefit from all the latest innovation as it’s released by the model provider. In general Anthropic (Claude) has a more business focus than OpenAI (ChatGPT), hence this feels like a better fit. See https://console.anthropic.com/docs/en/agents-and-tools/mcp-connector and https://google.github.io/adk-docs/tools-custom/mcp-tools/ MCP gateway to manage the auth/tool layer e.g. Zapier, Make Arcade.dev (https://www.youtube.com/watch?v=ax3oRPYE8mw) etc Laravel AI SDK Analysis Agent with custom instructions and tools- message and chat persistence through conversations message, conversations_message tables
- remembersConversations trait (keep most recent X conversations)
- usage stats and spend with ability to tie to nightwatch
- elevenlabs for audio
- use cheapest model option?
- vectorise and ingest data e.g. all customer campaigns