Transform LLMs into intelligent interviewers. MCP server for conducting dynamic, conversational surveys with structured data collection. Features
Connect Survey to Claude, Cursor or any other MCP client and it stops being a tab you switch to. Transform LLMs into intelligent interviewers. MCP server for conducting dynamic, conversational surveys with structured data collection. Features skip logic, session resume, multi-tenancy, and pluggable storage backends. The survey mcp server is what makes that connection.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
survey_list_available — Discover available surveys in the definitions directorysurvey_start_session — Initialize a new session with complete survey context, all questions, and initial suggested questionssurvey_get_question — Refresh a specific question's eligibility status after state changes (useful for conditional logic)survey_submit_response — Record participant answers with validation, scoring, returning updated progress and next suggested questionssurvey_get_progress — Check completion status, current score, remaining required/optional questions, and completion eligibilitysurvey_complete_session — Finalize a completed session with final score summary (requires all required questions answered)survey_export_results — Export session data in CSV or JSON format with optional filtering by status, date range, etcsurvey_resume_session — Resume an incomplete session, restoring full context including answered questions and progressPrerequisites — The Prerequisites tool exposed by this serverInstallation — 4. Explore example surveys: The survey-definitions/ directory contains example JSON files demonstrating various question types and features. UseSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.
Configuration is passed through the environment: MCP_LOG_LEVEL, SURVEY_DEFINITIONS_PATH, SURVEY_RESPONSES_PATH, MCP_AUTH_SECRET_KEY, OAUTH_ISSUER_URL. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
Among the file and storage access options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Survey's toolset — survey_list_available, survey_start_session, survey_get_question and 7 more — is a fair guide to whether it matches your workflow. It is maintained by cyanheads; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| survey_list_available | Discover available surveys in the definitions directory. |
| survey_start_session | Initialize a new session with complete survey context, all questions, and initial suggested questions. |
| survey_get_question | Refresh a specific question's eligibility status after state changes (useful for conditional logic). |
| survey_submit_response | Record participant answers with validation, scoring, returning updated progress and next suggested questions. |
| survey_get_progress | Check completion status, current score, remaining required/optional questions, and completion eligibility. |
| survey_complete_session | Finalize a completed session with final score summary (requires all required questions answered). |
| survey_export_results | Export session data in CSV or JSON format with optional filtering by status, date range, etc. |
| survey_resume_session | Resume an incomplete session, restoring full context including answered questions and progress. |
| Prerequisites | The Prerequisites tool exposed by this server. |
| Installation | 4. **Explore example surveys:** The survey-definitions/ directory contains example JSON files demonstrating various question types and features. Use these as a starting point for creating your own surveys. |
{
"mcpServers": {
"survey-mcp-server": {
"command": "bunx",
"args": ["@cyanheads/survey-mcp-server@latest"],
"env": {
"MCP_LOG_LEVEL": "info",
"SURVEY_DEFINITIONS_PATH": "./survey-definitions",
"SURVEY_RESPONSES_PATH": "./survey-responses"
}
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| MCP_LOG_LEVEL | Configuration value read at startup. | Optional |
| SURVEY_DEFINITIONS_PATH | Filesystem location the server is allowed to use. | Optional |
| SURVEY_RESPONSES_PATH | Filesystem location the server is allowed to use. | Optional |
| MCP_AUTH_SECRET_KEY | Credential the server authenticates with. | Yes |
| OAUTH_ISSUER_URL | Endpoint or connection string the server talks to. | Yes |
Scoped local file access — read, write, search and reorganise files in directories you explicitly allow.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Chat with your second brain — search, read and write vault notes through the Local REST API.
Connects AI models to an Obsidian knowledge base for direct access and manipulation of notes and folders.