LAB 02 — MODEL CONTEXT PROTOCOL SERVER

Signal Line

A live MCP server exposing this dataset's tools and data directly to Claude and other MCP clients — the same dataset The Listening Post reads from, wired up for an AI assistant to query and act on directly.

01
WHAT IS MCP

Tools an AI assistant can actually use

The Model Context Protocol (MCP) is an open standard that lets an AI assistant like Claude call an application's own tools and read its data directly, instead of a human copy-pasting context back and forth. Signal Line is a real MCP server — every tool and resource below is live and callable right now.

02
LIVE CATALOGUE

Tools, resources & prompts

Tools (5)
Tool

search_feedback

Hybrid (semantic + lexical) search over customer feedback. Optional filter.

  • query string required What to search for
  • segment string one of: Enterprise, Mid-Market, SMB
  • account_ref string Limit results to one account
Tool

get_theme_trends

Counts of feedback by theme and sentiment. Optional segment filter.

  • segment string one of: Enterprise, Mid-Market, SMB
Tool

get_segment_health

Average account health and usage trend for a segment.

  • segment string required one of: Enterprise, Mid-Market, SMB
Tool

flag_account_for_review

Flags an account for review. Fails on an unknown account_ref.

  • account_ref string required
  • reason string required
Tool

get_flagged_accounts

Lists accounts flagged for review, most recent entry per account.

No parameters.

Resources (2)
Resource

VoC segment definitions

Definitions for customer segments used across the signal_line tools.

voc://segments
Resource

VoC persona definitions

Definitions for personas used across the signal_line tools.

voc://personas
Prompts (3)
Prompt

weekly_cs_brief

Prioritised weekly brief: which accounts need attention and why.

  • segment Limit the brief to one segment (Enterprise, Mid-Market, SMB)
Prompt

account_deep_dive

Narrative summary of one account: recent feedback, flag status, recommended next step.

  • account_ref required The account_ref to investigate
Prompt

churn_risk_scan

Identifies which segment(s) are trending negative and what to investigate first.

  • segment Limit the scan to one segment (Enterprise, Mid-Market, SMB)
03
CONNECT YOUR OWN CLIENT

Wire this into Claude

URL https://www.cxmatters.com.au/mcp
Transport Streamable HTTP
Header Authorization: Bearer <your-token>
Claude Desktop
{
  "mcpServers": {
    "signal_line": {
      "command": "npx",
      "args": [
        "mcp-remote@latest",
        "https://www.cxmatters.com.au/mcp",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "Bearer <demo_token>"
      }
    }
  }
}

Claude Desktop's built-in Custom Connector UI only supports OAuth Client ID/Secret, not a static bearer token — so this server connects through the mcp-remote stdio bridge instead.


Add the config above in (Settings → Developer → Edit Config), save, and restart Claude Desktop.

Get a demo token

This is a live demo, not a public endpoint — get in touch for a read-only demo token.

Access today is gated by a shared bearer-token header, checked against an environment secret — a demo-grade shortcut, not a production auth model. The demo token is read-only: it can query tools freely but any write (like flagging an account) is politely refused. A real deployment would sit behind Doorkeeper/OAuth 2.1, issuing scoped, revocable tokens per client instead of one shared secret per role.

04
RECENT ACTIVITY

Recent queries through Signal Line

Tool Input Status Duration Token When
search_feedback
{
  "query": "webhook reliability problems",
  "segment": "Enterprise"
}
success 299ms demo about 8 hours ago
search_feedback
{
  "query": "Vantage Meridian",
  "segment": "Mid-Market"
}
success 158ms demo 27 days ago
search_feedback
{
  "query": "acct_1 support ticket"
}
success 767ms demo 27 days ago
search_feedback
{
  "query": "Vantage Meridian Solutions"
}
success 154ms demo 27 days ago
get_flagged_accounts
{}
success 7ms demo 27 days ago
search_feedback
{
  "query": "acct_1"
}
success 235ms demo 27 days ago
get_theme_trends
{
  "segment": "Enterprise"
}
success 706ms demo 27 days ago
get_segment_health
{
  "segment": "Enterprise"
}
success 69ms demo 27 days ago
get_flagged_accounts
{}
success 205ms demo 27 days ago
search_feedback
{
  "query": "churn"
}
success 292ms full 28 days ago
get_flagged_accounts
{}
success 31ms demo 28 days ago
flag_account_for_review
{
  "reason": "flagging for review",
  "account_ref": "acct_1"
}
success 30ms full 28 days ago
flag_account_for_review
{
  "reason": "flagging for review",
  "account_ref": "acct_1"
}
error 0ms demo 28 days ago
get_flagged_accounts
{}
success 3ms demo 28 days ago
flag_account_for_review
{
  "reason": "Enterprise churn/risk review — see feedback #54 ($220K account churned due to un…",
  "account_ref": "acct_1"
}
error 0ms demo 28 days ago
get_flagged_accounts
{}
success 20ms demo 28 days ago
get_theme_trends
{
  "segment": "Enterprise"
}
success 10ms demo 28 days ago
search_feedback
{
  "query": "churn",
  "segment": "Enterprise"
}
success 234ms demo 28 days ago
get_segment_health
{
  "segment": "Enterprise"
}
success 62ms demo 28 days ago
get_theme_trends
{
  "segment": "Enterprise"
}
success 5ms demo 28 days ago