Cursor Db Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Cursor Db Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server for accessing Cursor IDE's SQLite databases. This server allows AI assistants to explore and interact with Cursor's project data, chat history, and composer information.
<!-- __Claude__ In Claude GIF -->
__Cursor__ In Cursor GIF
Cursor IDE <!-- Claude Desktop (if you want to use MCP in Claude) -->
Use the provided installation script to install all dependencies:
python install.pyThis script will install:
<!-- ### Manual Installation
git clone https://github.com/yourusername/cursor-db-mcp.git
cd cursor-db-mcppip install -r requirements.txtpip install 'mcp[cli]' # Note the quotes around mcp[cli]If the above command fails, you can install the CLI dependencies directly:
pip install typer rich<!-- ## Usage
mcp install cursor-db-mcp-server.pySee detailed examples below
Note: If Claude shows an error connecting to this MCP it's likely because it can't find uv. To fix this, change the command value to include the fully qualified path to uv. For example:
"Cursor DB Manager": {
"command": "/Users/johndamask/.local/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/johndamask/code/cursor-db-mcp/cursor-db-mcp-server.py"
]
}Cursor DB MCP
Now you can ask questions about the database or retrieve info about historical chats.
DB structure
DB keys
Installing MCP servers for Claude Desktop
Add this to your claude_desktop_config.json file
"cursor-db-mcp": {
"command": "<fully qualified path to >/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"<fully qualified path to >/cursor-db-mcp-server.py"
]
}Cursor DB fuzzy search
cursor://projects - List all available Cursor projectscursor://projects/detailed - List projects with detailed informationcursor://projects/{project_name}/chat - Get chat data for a specific projectcursor://projects/{project_name}/composers - Get composer IDs for a specific projectcursor://composers/{composer_id} - Get data for a specific composerquery_table - Query a specific table in a project's databaserefresh_databases - Refresh the list of database paths<!-- # Example Usage with Claude
User: "Can you show me a list of my Cursor projects?"
Claude:
I'll retrieve a list of your Cursor projects.
Here are the Cursor projects I found:
- project1 (path: /Users/username/Library/Application Support/Cursor/User/workspaceStorage/abc123/state.vscdb)
- project2 (path: /Users/username/Library/Application Support/Cursor/User/workspaceStorage/def456/state.vscdb)
- custom-project (path: /Users/username/code/custom-project/state.vscdb)User: "Show me the chat history from my 'project1' project."
Claude:
I'll retrieve the chat history from your 'project1' project.
Here's the chat history I found:
Chat: "Understanding React Hooks"
- You: "Can you explain how useEffect works in React?"
- Claude: "The useEffect hook in React is used for handling side effects in functional components..."
Chat: "Debugging API Connection"
- You: "I'm getting a 401 error when connecting to the API. Here's my code..."
- Claude: "It looks like you're missing the authorization header in your request..."User: "Can you search for keys related to 'settings' in the ItemTable of my 'project1' project?"
Claude:
I'll search for keys related to 'settings' in the ItemTable of your 'project1' project.
Here are the results:
1. Key: "workbench.settings.editor"
Value: {"mode": "ui", "lastFocusedSettingId": "editor.fontSize"}
2. Key: "settings.language"
Value: "en"
3. Key: "settings.theme"
Value: "dark"User: "Can you analyze the chat data from my 'project1' project and tell me what topics I've been discussing most frequently?"
Claude:
I'll analyze the chat data from your 'project1' project.
Based on your chat history, here are the most frequent topics you've been discussing:
1. React Hooks and Components (5 conversations)
2. API Integration (3 conversations)
3. CSS Styling (2 conversations)
4. Performance Optimization (2 conversations)
5. Debugging (1 conversation)
The most common questions were about state management in React and handling API responses.The server uses the Model Context Protocol (MCP) to expose Cursor's SQLite databases to AI assistants. Key components include:
The server scans your Cursor installation directory to find project databases (state.vscdb files). It then exposes these databases through MCP resources and tools, allowing AI assistants to query and analyze the data.
<img src="./img/cursor-journal-logo_thumbnail.jpg" width="150" />
Like this? Try Cursor Journal to create DevLogs directly from Cursor chat history!
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.