Skip to main content

Overview

Jarvis is Trending Society’s voice-first AI assistant. Connected to the single database, it has complete context across all business units. Status: Active - MCP tools deployed

Architecture

Voice Input (MentraOS glasses / mobile)

    Speech-to-Text

    jarvis_conversations / jarvis_messages

    AI Processing (Claude/GPT)

    MCP Tool Execution

    jarvis_tool_logs

    Response + Text-to-Speech

Database Tables

TablePurposeRows
jarvis_conversationsVoice sessions10
jarvis_messagesMessage history19
jarvis_tool_logsMCP execution records8
jarvis_embeddingsSemantic search vectors0
jarvis_user_contextPersistent user memory0

MCP Gateway

Jarvis connects to tools via the MCP Gateway deployed on Cloudflare Workers. Endpoint: mcp.trendingsociety.com

Available Tools

ToolPurpose
list_tablesQuery database schema
execute_sqlRun read queries
get_ordersFetch Shopify orders
get_productsFetch product catalog
create_linear_issueCreate tickets

Example Queries

Business Overview

"How's the business doing this week?"

→ Queries across all tables
→ Returns: posts published, orders, revenue, deliverables

Order Status

"What orders came in today?"

→ SELECT * FROM shopify_orders WHERE created_at::date = CURRENT_DATE
→ Returns: order list with customer names, totals

Content Performance

"Which travel posts are performing best?"

→ JOIN publisher_posts with publisher_post_analytics
→ Returns: top posts by views/engagement

Task Management

"Create a ticket to fix the login bug"

→ Calls Linear MCP tool
→ Creates ENG issue with description

Tony Stark Vision

The goal: voice-controlled business management through smart glasses.
Jeff: "Jarvis, what's my top priority today?"

Jarvis: "You have 3 Linear tickets due today. The most impactful 
is ENG-3, the documentation site setup. Publisher scraping is 
running normally with 66 posts collected. No urgent orders."

Context Awareness

Because Jarvis queries the same database as all products:
  • Knows which blog posts drive affiliate revenue
  • Sees creator licensing activity in real-time
  • Tracks agency client deliverables
  • Monitors store inventory and orders
No separate data warehouse. No stale syncs. Real-time full context.

Implementation

Conversation Flow

// Create conversation
const { data: conversation } = await supabase
  .from('jarvis_conversations')
  .insert({ user_id, started_at: new Date() })
  .select()
  .single();

// Add message
await supabase
  .from('jarvis_messages')
  .insert({
    conversation_id: conversation.id,
    role: 'user',
    content: transcribedText
  });

// Process with AI + MCP tools
const response = await processWithAI(transcribedText, tools);

// Log tool usage
if (response.toolCalls) {
  await supabase
    .from('jarvis_tool_logs')
    .insert(response.toolCalls.map(tc => ({
      conversation_id: conversation.id,
      tool_name: tc.name,
      input: tc.input,
      output: tc.output
    })));
}

Next Steps

  • Integrate with MentraOS glasses
  • Add more MCP tools (calendar, email)
  • Implement persistent user context
  • Build mobile companion app