npm signal-relay-mcpstreamable-httpMITupdated 3mo ago
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.
What can you do with signal relay?
Signal Relay - SocioLogic MCP Server
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
- 24 MCP Tools - Personas, campaigns, focus groups, web research, RNG, credits, and payments
- 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.sociologic.ai.
-
Get an API key at sociologic.ai/dashboard/api-keys (100 free credits on signup)
-
Configure your MCP client:
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"sociologic": {
"transport": "http",
"url": "https://mcp.sociologic.ai",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}
Claude Code (.mcp.json in your project):
{
"mcpServers": {
"sociologic": {
"transport": "http",
"url": "https://mcp.sociologic.ai",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}
- Start chatting! Ask Claude to interview personas, create campaigns, or explore the marketplace.
Self-Hosting
Deploy your own instance to Cloudflare Workers:
Prerequisites
- Node.js v18+
- Cloudflare account (free tier works)
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
| Tool | Description |
|---|---|
sociologic_list_personas |
List synthetic personas from marketplace or private collection |
sociologic_get_persona |
Get detailed persona information (demographics, psychographics, traits) |
sociologic_create_persona |
Generate a new persona from natural language description |
sociologic_get_persona_memories |
Retrieve persona's semantic memories via vector search |
sociologic_list_campaigns |
List research campaigns with status and results |
sociologic_get_campaign |
Get campaign details including interviews and findings |
sociologic_create_campaign |
Create multi-persona research campaign with custom questions |
sociologic_execute_campaign |
Execute draft campaign (async background processing) |
sociologic_export_campaign |
Export campaign results as PDF or JSON |
sociologic_list_focus_groups |
List focus groups for cohort-based research |
sociologic_get_focus_group |
Get focus group details with member personas |
sociologic_create_focus_group |
Create new focus group to organize personas |
sociologic_add_personas_to_focus_group |
Add personas to an existing focus group |
sociologic_get_credits_balance |
Check current credits balance and usage |
sociologic_search_web |
Search the web and scrape results |
sociologic_research_topic |
Research a topic with multiple sources |
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/ |
POST | JSON-RPC 2.0 endpoint for MCP protocol |
/health |
GET | Health check (requires API key) |
/info |
GET | Server information and available tools |
Example Usage
List Available Personas
curl -X POST https://mcp.sociologic.ai/ \
-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
| Variable | Description | Default |
|---|---|---|
SOCIOLOGIC_API_URL |
Backend API URL | https://www.sociologic.ai |
wrangler.toml
[vars]
SOCIOLOGIC_API_URL = "https://www.sociologic.ai"
Security
- API keys are passed via
X-API-Keyheader orAuthorization: Bearerheader - 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:
- Go to Cloudflare Dashboard > Security > WAF > Rate limiting rules
- 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
| Operation | Credits |
|---|---|
| List personas | 1 |
| Get persona | 1 |
| Create persona | 5-50 (by fidelity tier) |
| Interview persona | 1 per message |
| Campaign execution | Varies 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.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Links
Install
Add signal relay to your client. Pick the one you use.
{
"servers": {
"signal-relay-mcp": {
"type": "http",
"url": "https://mcp.sociologic.ai"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add signal-relay-mcp -- npx -y signal-relay-mcpcodex mcp add signal-relay-mcp -- npx -y signal-relay-mcpamp mcp add signal-relay-mcp -- npx -y signal-relay-mcp{
"mcpServers": {
"signal-relay-mcp": {
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"signal-relay-mcp": {
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"signal-relay-mcp": {
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"signal-relay-mcp": {
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"signal-relay-mcp": {
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"signal-relay-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"signal-relay-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"signal-relay-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"signal-relay-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y signal-relay-mcpRun `goose configure`, choose **Add Extension β Command-line Extension**, and paste this command.
16 tools
signal relay exposes 16 tools to a connected agent.
- sociologic_list_personas
- List synthetic personas from marketplace or private collection
- sociologic_get_persona
- Get detailed persona information (demographics, psychographics, traits)
- sociologic_create_persona
- Generate a new persona from natural language description
- sociologic_get_persona_memories
- Retrieve persona's semantic memories via vector search
- sociologic_list_campaigns
- List research campaigns with status and results
- sociologic_get_campaign
- Get campaign details including interviews and findings
- sociologic_create_campaign
- Create multi-persona research campaign with custom questions
- sociologic_execute_campaign
- Execute draft campaign (async background processing)
- sociologic_export_campaign
- Export campaign results as PDF or JSON
- sociologic_list_focus_groups
- List focus groups for cohort-based research
- sociologic_get_focus_group
- Get focus group details with member personas
- sociologic_create_focus_group
- Create new focus group to organize personas
- sociologic_add_personas_to_focus_group
- Add personas to an existing focus group
- sociologic_get_credits_balance
- Check current credits balance and usage
- sociologic_search_web
- Search the web and scrape results
- sociologic_research_topic
- Research a topic with multiple sources
Score
74 / 100
Good
- Documentation25/25
- Maintenance13/25
- Trust13/20
- Capability8/15
- Install experience15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 106 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 16 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint β no local install
Version history
| Versions | Published |
|---|---|
| 2.0.0Latest | May 17, 2026 |
| 1.0.2 | Jan 19, 2026 |