(Written with Cursor Journal)
Overview:
This project was an experiment to make an MCP for interacting with Cursor’s database. Code available here.
DevLog:
The primary focus was on investigating and resolving issues related to the MCP server. The session began with identifying a bug related to the server's default path, where endpoints failed to return data unless a specific path was provided. It was recognized that even when a valid path was given, it still wasn't functioning as expected, which led to frustration.
Efforts transitioned to troubleshooting a Git push error and establishing proper server setup. After ensuring that the MCP SDK was installed, further debugging around creating a working MCP in the Cursor IDE.
There were several reflections on the requirement for specific arguments or environmental variables, with much trial and error to get things operational. I made progress refactoring the MCP server code to adapt to the necessary data retrieval methods and worked on query examples for accessing data from SQLite databases.
As the day progressed, multiple attempts to get the server to interface effectively with the Cursor environment were made, highlighting back and forth with error messages regarding accessibility and execution. There were observations about possible circular troubleshooting affecting the efficiency of the process.
Finally, I structured the MCP server code to ensure endpoints were created for retrieving lists of projects, as well as chat and composer data from projects, while emphasizing that the initial focus was strictly on data retrieval without POST endpoints. A request was also made to create a README file detailing the project with examples for each endpoint, which would further clarify the setup and usage.