Repository avatar
AI Tools
v1.0.2
active

signal-relay

io.github.SocioLogicAI/signal-relay

Connect AI agents to SocioLogic's synthetic persona platform for market research.

Documentation

Signal Relay - SocioLogic MCP Server

License: MIT MCP

A remote MCP (Model Context Protocol) server that connects AI agents to SocioLogic's synthetic persona platform. Interview realistic customer personas, run multi-persona research campaigns, and export board-ready reports—all through natural conversation.

Features

  • 20 MCP Tools - Full access to personas, campaigns, focus groups, credits, and web research
  • High-Fidelity Personas - Synthetic personas with consistent demographics, psychographics, and behavior
  • Semantic Memory - RAG-powered memory retrieval for persona continuity across conversations
  • Edge Deployed - Runs on Cloudflare Workers (300+ locations, <50ms latency)
  • Secure - API key authentication, request validation, no data stored on edge

Quick Start

Use the Hosted Server (Recommended)

The fastest way to get started is using our hosted server at https://mcp.sociologicai.com.

  1. Get an API key at sociologic.ai/dashboard/api-keys (100 free credits on signup)

  2. Configure your MCP client:

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "sociologic": {
      "transport": "http",
      "url": "https://mcp.sociologicai.com",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Claude Code (.mcp.json in your project):

{
  "mcpServers": {
    "sociologic": {
      "transport": "http",
      "url": "https://mcp.sociologicai.com",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}
  1. Start chatting! Ask Claude to interview personas, create campaigns, or explore the marketplace.

Self-Hosting

Deploy your own instance to Cloudflare Workers:

Prerequisites

Installation

# Clone the repository
git clone https://github.com/SocioLogicAI/signal-relay.git
cd signal-relay

# Install dependencies
npm install

# Login to Cloudflare
npx wrangler login

# Deploy
npx wrangler deploy

Your server will be available at https://sociologic-mcp-server.<your-subdomain>.workers.dev

Local Development

npm run dev

Starts a local server at http://localhost:8787.

Available Tools

ToolDescription
sociologic_list_personasList synthetic personas from marketplace or private collection
sociologic_get_personaGet detailed persona information (demographics, psychographics, traits)
sociologic_create_personaGenerate a new persona from natural language description
sociologic_interview_personaConduct adversarial interview with a persona
sociologic_get_persona_memoriesRetrieve persona's semantic memories via vector search
sociologic_list_campaignsList research campaigns with status and results
sociologic_get_campaignGet campaign details including interviews and findings
sociologic_create_campaignCreate multi-persona research campaign with custom questions
sociologic_execute_campaignExecute draft campaign (async background processing)
sociologic_export_campaignExport campaign results as PDF or JSON
sociologic_list_focus_groupsList focus groups for cohort-based research
sociologic_get_focus_groupGet focus group details with member personas
sociologic_create_focus_groupCreate new focus group to organize personas
sociologic_add_personas_to_focus_groupAdd personas to an existing focus group
sociologic_get_credits_balanceCheck current credits balance and usage
sociologic_scrape_urlScrape content from a URL (web research)
sociologic_search_webSearch the web and scrape results
sociologic_research_topicResearch a topic with multiple sources
sociologic_get_company_infoGet company information from a website

API Endpoints

EndpointMethodDescription
/POSTJSON-RPC 2.0 endpoint for MCP protocol
/healthGETHealth check (requires API key)
/infoGETServer information and available tools

Example Usage

Interview a Persona

curl -X POST https://mcp.sociologicai.com/ \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "sociologic_interview_persona",
      "arguments": {
        "slug": "enterprise-buyer",
        "message": "What would make you hesitant to try a new AI product?"
      }
    }
  }'

List Available Personas

curl -X POST https://mcp.sociologicai.com/ \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "sociologic_list_personas",
      "arguments": {
        "visibility": "public",
        "per_page": 10
      }
    }
  }'

Configuration

Environment Variables

VariableDescriptionDefault
SOCIOLOGIC_API_URLBackend API URLhttps://www.sociologic.ai

wrangler.toml

[vars]
SOCIOLOGIC_API_URL = "https://www.sociologic.ai"

Security

  • API keys are passed via X-API-Key header or Authorization: Bearer header
  • Request size limited to 1MB to prevent DoS
  • Input validation via Zod schemas on all tool parameters
  • No data stored on edge - all data flows through to the SocioLogic API

Rate Limiting

For production deployments, we recommend enabling Cloudflare's rate limiting:

  1. Go to Cloudflare Dashboard > Security > WAF > Rate limiting rules
  2. Create a rule: 100 requests per 10 seconds per IP

Architecture

┌─────────────────┐      ┌─────────────────────┐      ┌─────────────────┐
│                 │      │                     │      │                 │
│   MCP Client    │─────▶│  Cloudflare Worker  │─────▶│  SocioLogic API │
│  (Claude, etc)  │      │   (This Server)     │      │                 │
│                 │◀─────│                     │◀─────│                 │
└─────────────────┘      └─────────────────────┘      └─────────────────┘
        │                         │                          │
        │    MCP Protocol         │    REST API              │
        │    (JSON-RPC 2.0)       │    (HTTPS)               │
        └─────────────────────────┴──────────────────────────┘

Pricing

OperationCredits
List personas1
Get persona1
Create persona5-50 (by fidelity tier)
Interview persona1 per message
Campaign executionVaries by size

Free tier: 100 credits on signup. See sociologic.ai/pricing for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Links