Recently, I posted about how I started using MCP tools in Cursor to speed up development and automated testing. Since then, Iβve gone a step further and created a repository of example rules I use when developing and testing both PHP and React apps:
π Cursor-Rules on GitHub
Cursor-Rules/
βββ PHP/
β βββ php.mdc # PHP coding standards and best practices
β βββ testing.mdc # PHP testing guidelines
βββ React/
β βββ react.mdc # React development best practices
β βββ testing.mdc # React testing guidelines
βββ README.md # This file
These rules mainly focus on coding structure and testing.
Applying the Rules to Emerald Notes
For PR #6 of Emerald Notes, I tried combining these rules with a development plan to improve the note editor.
π Plan: Editor Improvements (8/23/25)
Description: This is a development plan to improve the editor for notes Goal: Once this plan is finished, the editor should increased functionality, as well as not should display the same in view mode as the editor
Background Context: So far the editor has the following features:
Simple text formatting like bold, italics, strike-through and color
Images and links
unordered and ordered lists
code blocks and tables(basic)
Steps:
Step 1: Plan improvements to the editor, figure out what features would be useful to add. Ensure these features are feasible. Suggestions: - Make the table features more useful and improve the usability - Figure out how to make layout changes and content positioning easier. For example center, left and right align, image anchoring
Step 2: Propose changes to the users, give each major feature a step so the user change respond with approval or tweaks
Step 3: Implement each feature separately, making sure to use an rules or tools you have at your disposal to test
Step 4: Repeat step 3 for each feature
Step 5; After each feature is implement, please test for a final time to make sure each feature works together, then summarize the results.
The goal was to add new features like better tables, text alignment, image positioning, and layout controls.
It started out very promising, following me request by taking in my suggestions and creating a plan to add features:
I'll execute the plan to improve the editor for notes. Let me start by examining the current editor implementation and then proceed with the steps outlined in the plan.
Read file: src/components/DualEditor.tsx
Now let me examine the current editor implementation to understand what features are already available and what improvements can be made.
## Step 1: Plan Improvements β
I've analyzed the current editor implementation and identified several areas for improvement. The editor already has a solid foundation with text formatting, images, links, lists, code blocks, and basic tables.
## Step 2: Propose Changes
I've planned **4 major feature improvements** that will significantly enhance the editor's functionality. Here are the proposed features:
### **Feature 1: Enhanced Table Functionality**
- **Table cell background colors** - Add color picker for individual cells
- **Improved table styling** - Better borders, spacing, and visual design
- **Table header styling options** - Enhanced header appearance
- **Better table insertion** - Dialog to select table size before insertion
- **Table cell padding controls** - Adjust spacing within cells
### **Feature 2: Text Alignment and Layout Controls**
- **Text alignment buttons** - Left, center, right, and justify alignment
- **Horizontal rules/dividers** - Insert clean separators between content
- **Text indentation controls** - Indent and outdent text blocks
- **Improved paragraph spacing** - Better control over content spacing
### **Feature 3: Image Positioning and Anchoring**
- **Image alignment options** - Left, center, right alignment for images
- **Text wrapping around images** - Float images with text flow
- **Image size controls** - Resize images with proper aspect ratio
- **Image caption support** - Add descriptive text below images
### **Feature 4: Enhanced Content Positioning**
- **Margin/padding controls** - Adjust spacing around block elements
- **Better block positioning** - More control over element placement
- **Floating elements** - Advanced positioning for complex layouts
---
**Please review these proposed features and let me know:**
1. Which features you'd like me to implement first
2. If you'd like any modifications to the proposed features
3. If you'd like me to proceed with all features in the order listed
Each feature will be implemented separately and tested thoroughly before moving to the next one.
Once I approved these changes, it did follow the instructions however the results where less then satisfactory.
Results
Hereβs how it went when I combined my rules + plan with Cursor:
Feature 1: Enhanced Tables
- β Rounded table corners were added.
- β Background colors only worked through an alert box that asked for a text input (instead of a proper color picker).
- β A color picker was added to the main editor toolbar, but it didnβt actually do anything. (this was mention in the result summary the agent created)

Feature 2: Text Alignment & Layout
- β A horizontal divider was successfully added.
- β Alignment icons were confusing β one of them didnβt even seem to map to a real alignment option.
- β The UI felt inconsistent, with icons that didnβt match their function between text and image alignment.

Feature 3: Image Positioning & Anchoring
- β Resizing works, but again it relies on an alert box where you type in a width value.
- β Captions donβt display properly β it just prompts for text but doesnβt render it under the image.
- β Alt text isnβt updated when adding captions.

Feature 4: Content Positioning
- β This one was a complete failure.
- Tables and code blocks canβt be moved at all.
- Images are draggable, but instead of moving them, Cursor duplicates the image when you release it.
Takeaways / Lessons Learned
While Cursor followed my plan, the results werenβt production-ready. A few key lessons:
- Be specific about UX β React apps shouldnβt use system alert boxes. My rules need to explicitly forbid that.
- Define styling expectations β Alignment and image controls should have clear, distinct UI.
- Improve testing rules β Mentioning Playwright isnβt enough; I need to require full feature testing before marking a step complete.
π Full results: Editor Improvements Results
Final Thoughts
This experiment showed me that MCP rules + plans can guide Cursor, but the quality of the rules matters just as much as the code. With clearer UX and testing requirements, I think the next iteration will be much closer to usable.