```mermaid graph TD A[Accept niche/topic description] --> B[Generate search keywords] B --> C{Search Google with keyword 1} C -->|Search results 1| D[Save search results 1] D --> E[Analyze search results 1] E -->|Key phrases 1| O[Combine key phrases and concepts] B --> F{Search Google with keyword 2} F -->|Search results 2| G[Save search results 2] G --> H[Analyze search results 2] H -->|Key phrases 2| O B --> I{Search Google with keyword 3} I -->|Search results 3| J[Save search results 3] J --> K[Analyze search results 3] K -->|Key phrases 3| O B --> L{Search Google with keyword 4 if applicable} L -->|Search results 4| M[Save search results 4] M --> N[Analyze search results 4] N -->|Key phrases 4| O B --> P{Search Google with keyword 5 if applicable} P -->|Search results 5| Q[Save search results 5] Q --> R[Analyze search results 5] R -->|Key phrases 5| O O --> S[Refine key phrases list] S --> T[Format final list as JSON] T --> U[Output JSON string] ```