MCP Server
A Model Context Protocol server that integrates with Cursor IDE, providing real-time communication, modern web dashboards, and extensible tools via SSE and WebSocket connections.
A Model Context Protocol server that integrates with Cursor IDE, providing real-time communication, modern web dashboards, and extensible tools via SSE and WebSocket connections.
A Model Context Protocol (MCP) server implementation for Cursor IDE integration, providing a modern web dashboard and tools through SSE (Server-Sent Events) and WebSocket connections.
Clone the repository:
git clone <repository-url>
cd MCP-Server
Install dependencies:
# Install all dependencies (both backend and frontend)
npm run install-all
# Or install separately:
# Backend dependencies
pip install -r requirements.txt
# Frontend dependencies
cd frontend
npm install
cd ..
Start the development servers:
# Start both backend and frontend in development mode
npm run dev # This will start both servers concurrently
The servers will start at:
- Backend: http://localhost:8765
- Frontend: http://localhost:3000
(or 3001
if port 3000 is in use)
You can also start the servers separately:
# Backend (in one terminal)
python mcp_server.py
# Frontend (in another terminal)
cd frontend
npm run dev
The development servers provide: - Hot reloading for frontend changes - Automatic proxy of API requests to the backend - WebSocket connection handling - Concurrent backend and frontend development
If you're running other applications that use port 3000, the frontend will automatically try port 3001 and increment until it finds an available port. The actual URL will be displayed in the terminal when you run npm run dev
.
MCP-Server/
├── frontend/ # Frontend application
│ ├── src/ # Source code
│ │ ├── api/ # API clients
│ │ ├── pages/ # React components
│ │ └── main.tsx # Entry point
│ ├── package.json # Frontend dependencies
│ └── vite.config.ts # Vite configuration
├── mcp_server.py # Main server implementation
├── services.py # Service management
├── test_client.py # Test client implementation
├── requirements.txt # Python dependencies
├── package.json # Root package.json
└── services_config.json # Service configurations
/api/status
- Get server status/api/connections/history
- Get connection history/api/clients
- Get active clients/api/services/{service_id}
- Service configuration/api/settings
- Server settings/ws/{client_id}
- Real-time updates and ping/pong/sse
- Server-Sent Events for Cursor IDE/invoke/test
- Test tool/invoke/google_drive
- Google Drive operationsBuild and start the production server:
# Build frontend and start production server
npm run prod
# Or build frontend separately:
npm run build
python mcp_server.py
Copy the template configuration:
cp services_config.template.json services_config.json
Update services_config.json
with your service credentials:
client_id
and client_secret
Configure server settings through the web dashboard: - Debug mode - SSL settings - Connection limits - Ping timeout - Protocol settings
Test the server using the provided test client:
python test_client.py
The test client will: - Connect to both SSE and WebSocket endpoints - Send periodic pings - Test available tools - Monitor connection status
vite.config.ts
are correctCheck for port conflicts
Frontend Issues
Check for TypeScript compilation errors
Backend Issues
mcp_server.log
for errors*
) in developmentservices_config.json
[Add your license information here]