The Qualitative Researcher MCP Server provides a structured knowledge graph system to help qualitative researchers organize their research data, track analysis processes, and manage themes and findings across multiple research sessions.
You can set up the Qualitative Researcher MCP Server using several methods:
Add this to your claude_desktop_config.json
to run directly with npx:
{
"mcpServers": {
"qualitativeresearch": {
"command": "npx",
"args": [
"-y",
"github:tejpalvirk/qualitativeresearch"
]
}
}
}
First, install the package globally:
npm install -g github:tejpalvirk/qualitativeresearch
Then configure Claude Desktop:
{
"mcpServers": {
"qualitativeresearch": {
"command": "contextmanager-qualitativeresearch"
}
}
}
{
"mcpServers": {
"qualitativeresearch": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"mcp/qualitativeresearch"
]
}
}
}
You can customize where the server stores data using environment variables:
# Store data in the current directory
MEMORY_FILE_PATH="./qualitative-memory.json" SESSIONS_FILE_PATH="./qualitative-sessions.json" npx github:tejpalvirk/contextmanager-qualitativeresearch
# Store data in a specific location (absolute path)
MEMORY_FILE_PATH="/path/to/data/qualitative-memory.json" npx github:tejpalvirk/contextmanager-qualitativeresearch
The Qualitative Researcher MCP Server supports several tools for managing your research:
Begin a new research session with the startsession
tool. This creates a unique session ID and displays your current research projects, recent data, and emergent themes.
Example prompt:
Let's start a new qualitative research session for my Health Behavior Study project.
Use the loadcontext
tool to retrieve detailed information about a specific entity in your research:
Example prompt:
Load the context for the Health Behavior Study project so I can see the current state of my analysis.
When you finish a research session, use the endsession
tool to document your work:
Example prompt:
I've just finished analyzing interview data for my Health Behavior Study. I identified two new themes related to social support, coded three new interviews, and wrote memos about emerging patterns in participant responses. I've marked the initial coding phase as complete and set the thematic analysis as high priority. The project is progressing well, and I'm beginning to reach theoretical saturation.
Use buildcontext
to create new elements:
Example prompt:
Create a new code called "Family Support" that's part of the "Social Support" code group in the Health Behavior Study project. Set its status to active and make it precede the "Social Network Analysis" activity.
Update existing elements in your research:
Example prompt:
Update the status of the "Participant Recruitment" process to "completed" and add an observation that we've reached our target sample size.
The server supports many entity types for qualitative research:
Connect entities with relationships such as:
The server provides specialized functions for qualitative research workflows:
These functions help maintain analytical continuity, develop coding frameworks, track thematic development, and enhance methodological rigor throughout your qualitative research process.
To add this MCP server to Claude Code, run this command in your terminal:
claude mcp add-json "qualitativeresearch" '{"command":"npx","args":["-y","github:tejpalvirk/qualitativeresearch"]}'
See the official Claude Code MCP documentation for more details.
There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json
file so that it is available in all of your projects.
If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json
file.
To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".
When you click that button the ~/.cursor/mcp.json
file will be opened and you can add your server like this:
{
"mcpServers": {
"qualitativeresearch": {
"command": "npx",
"args": [
"-y",
"github:tejpalvirk/qualitativeresearch"
]
}
}
}
To add an MCP server to a project you can create a new .cursor/mcp.json
file or add it to the existing one. This will look exactly the same as the global MCP server example above.
Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.
The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.
You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.
To add this MCP server to Claude Desktop:
1. Find your configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
2. Add this to your configuration file:
{
"mcpServers": {
"qualitativeresearch": {
"command": "npx",
"args": [
"-y",
"github:tejpalvirk/qualitativeresearch"
]
}
}
}
3. Restart Claude Desktop for the changes to take effect