hyungwoo park

hyungwoo park

FireSEO MCPFireSEO MCP
I'm idiots
18 points
FireSEO MCP
We seriously considered Stripe, but for a global SaaS, handling international taxes (VAT, GST) is a nightmare. Lemon Squeezy acts as the Merchant of Record (MoR). This means they handle all the tax compliance, invoicing, and remittance for us. If we used Stripe, we'd have to deal with tax laws in 100+ countries ourselves. With Lemon Squeezy, we just pasted the checkout link and focused on building the product. It's a no-brainer for indie hackers.

Alternatives Considered

6 views
FireSEO MCP
We chose FastMCP because it treats MCP servers like FastAPI applications. Decorator-based DX: Instead of writing verbose class-based boilerplate, we just use @mcp.tool(). It feels exactly like writing a FastAPI route. Pydantic Native: Since we heavily use Pydantic for data validation (SERP results, GSC data), FastMCP's native integration saved us hours of conversion work. Built-in Image Support: FastMCP makes it incredibly easy to return multimodal responses (images + text), which is crucial for our "Site Health Check" features that visualize data. SSE out-of-the-box: Connecting to Claude Desktop requires a robust Server-Sent Events implementation. FastMCP handles the handshake, keep-alive, and transport details automatically. It's the "FastAPI moment" for the MCP ecosystem.

Alternatives Considered

15 views
FireSEO MCP
For FireSEO, we needed a backend that could move as fast as our AI agents. Here is why Supabase was the clear winner over Firebase or a custom Postgres setup: Vector Embeddings (pgvector): Since this is an AI-native app, we rely heavily on vector search for semantic understanding of keywords and content. Supabase's native pgvector support meant we didn't need a separate vector DB like Pinecone. It's all in one place. Row Level Security (RLS): Security is paramount when handling user's GSC data. Supabase's RLS allows us to enforce strict data isolation at the database level, ensuring Agent A can never access Agent B's data, no matter what valid-looking SQL it tries to generate. Real-time Capabilities: We use Realtime subscriptions to push GSC analysis progress back to the client instantly. When you see the "Agent is thinking..." stream, that's Supabase Realtime in action. Edge Functions: We offload some of the heavy scraping logic to Edge Functions to keep the main agent loop snappy.

Alternatives Considered

6 views