rifts.to MCP server

rifts.to MCP server

Enables creating, managing, and analyzing live audience surveys on rifts.to directly from an AI client. Supports creating surveys, listing them, retrieving results, and closing surveys via natural language.

Category
Visit Server

README

rifts.to MCP server

npm CI License

An MCP server for rifts.to, a live audience survey tool. It lets an AI client create a survey, list the surveys on your account, read back the results, and close a survey when you're done collecting responses.

Point a poll at your audience by asking your AI client to do it, and check the answers the same way, without leaving the chat.

claude mcp add --transport http rifts https://mcp.rifts.to/mcp

That is the hosted server, and it signs you in through the browser. Running your own copy is supported too.

Tools

  • create_survey: creates a survey from a title and a list of questions and returns its public link and admin link. Optionally accepts a custom slug.
  • list_surveys: lists the surveys on your account, with title, status, and response count. Admin links are included only if you ask for them, so a routine listing doesn't hand a model a pile of credentials it didn't need.
  • get_survey_results: returns a survey's questions and every response.
  • close_survey: stops a survey from accepting new responses. Reopening, retitling, and editing questions stay in the rifts.to admin dashboard, not here.

Hosted, with sign-in

rifts.to runs this server at https://mcp.rifts.to/mcp. Add it as a remote MCP server and your client walks an OAuth flow: it registers itself, sends you to rifts.to to approve, and stores the token it gets back. Nothing to paste, and you can revoke it later under "Connected applications" on /account.

In Claude Desktop, add it as a custom connector with that same URL.

Running it yourself, with a token you paste in, is the rest of this document.

Run it yourself

npx @rifts_to/mcp

Releases are published from CI with npm provenance, so each version on npm carries a signed attestation linking it to the commit and workflow run that built it. You can check the one you installed:

npm audit signatures

Cutting a GitHub release triggers the publish; the tag has to match the version in package.json or the run fails.

Building from source works too, and is the same code:

git clone https://github.com/riftsto/mcp.git rifts-mcp
cd rifts-mcp
npm install
npm run build
node dist/stdio.js

The server reads its configuration from two environment variables:

  • RIFTS_TOKEN (required): your personal access token.
  • RIFTS_API_URL (optional): defaults to https://rifts.to. Set this only if you're pointing the server at a different rifts.to deployment.

Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "rifts": {
      "command": "npx",
      "args": ["-y", "@rifts_to/mcp"],
      "env": {
        "RIFTS_TOKEN": "your-token-here"
      }
    }
  }
}

Running from a clone instead means "command": "node" with "args": ["/path/to/rifts-mcp/dist/stdio.js"].

Claude Code

claude mcp add rifts -e RIFTS_TOKEN=your-token-here -- npx -y @rifts_to/mcp

Add -s user to make it available in every project instead of just the current one.

Getting a token

  1. Sign in at rifts.to.
  2. Go to /account.
  3. Create a token under "API tokens."

Token creation requires an active subscription. The token is shown once, at creation time, so save it somewhere before you close the dialog. If you lose it, create a new one.

Self-hosting

This server is stateless and holds no credentials of its own. Every request carries your RIFTS_TOKEN and goes straight to the rifts.to API; the server doesn't store it, cache it, or log it anywhere. Running your own copy, on your own machine or your own infrastructure, is a supported way to use it, and it still needs a token from a real rifts.to account with an active subscription. There's no separate self-hosting tier or discount; the token is what's paid for, not the server.

Development

npm install
npm test          # vitest, drives the server over an in-memory transport
npm run typecheck
npm run build

The tests connect a real MCP client to the server and call the tools against a stub API, so a schema that rejects a valid question, or a result the SDK refuses to serialize, fails in CI rather than in someone's chat window.

src/server.ts builds the server and is transport-free. src/stdio.ts and src/worker.ts are the two entry points, and neither contains tool logic, so the hosted and self-hosted paths cannot drift on what the tools do.

Security

Token handling, what this server can reach, and how to report a vulnerability: SECURITY.md.

License

Apache-2.0. See LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured