MCP server

UserSound exposes a Model Context Protocol server so AI assistants like Claude and ChatGPT can work with your survey data directly: list surveys, read transcripts, search responses across surveys, and generate sentiment reports. Everything is scoped to your organisation and authorised with OAuth 2.1 — the assistant only sees what your account can see.

Works with Claude Claude Code ChatGPT Codex Cursor VS Code Windsurf Any MCP client

Connect a client

The server speaks MCP's streamable HTTP transport at:

URL


https://usersound.com/mcp

Point any MCP client at that URL. Clients that support OAuth discovery and Dynamic Client Registration (Claude, ChatGPT, MCP Inspector, and most others) register themselves automatically and open a browser window for you to sign in and approve access — no manual API keys.

Example client configuration

JSON


{
  "mcpServers": {
    "usersound": {
      "type": "http",
      "url": "https://usersound.com/mcp"
    }
  }
}

Authorization & scopes

The MCP server is an OAuth 2.1 resource server. Clients authorise with an authorization-code + PKCE flow against UserSound's own authorization server (discovered via /.well-known/oauth-protected-resource/mcp), and can register themselves at /o/register/ (RFC 7591). Tokens are granted the scopes you approve on the consent screen:

Scope Grants
interviews:read All read tools: surveys, responses, transcripts, search, reports, members.
interviews:write create_report — start generating a sentiment report.
billing:read get_billing_status — your organisation's subscription status.

Tools

Tool What it does
list_surveysList your surveys with response counts; filter by status, name or creator.
get_surveyOne survey's settings and metadata.
get_survey_setupThe interview template and its questions (contributor roles only).
list_responsesOne survey's responses with filters plus lifecycle and quality aggregates.
get_response_transcriptThe full conversation transcript, summary and sentiment for one response.
search_responsesSearch responses across all your surveys by name, sentiment, status or date.
get_dashboard_summaryOrganisation-wide response status counts and the latest response.
list_reports / get_reportSentiment reports for a survey; get_report is also the poll tool.
create_reportStart a sentiment report from a natural-language query or hard filters.
get_billing_statusYour organisation's subscription snapshot.
list_organisation_membersActive and archived members, plus pending invites.

Reports generate asynchronously: create_report returns a pending report id immediately; the assistant polls get_report until the status is complete (or failed) and then reads the report markdown and sentiment aggregates.

Try asking

Once connected, ask your assistant things like:

Prompt


What did people with negative sentiment say in the last 30 days?
Prompt


Which of my surveys got the most completed responses this month?
Prompt


Create a sentiment report for my most recent survey and summarise the findings

Access control

  • Every tool call runs as the user who authorised the client: organisation members see their organisation's surveys, and role permissions (viewer, member, admin, owner) apply exactly as in the dashboard.
  • Tokens expire and can be revoked at any time from your account's authorised-applications page.
  • An assistant can never widen access: cross-organisation ids simply return not_found.