peteraspenberg/screen-control-mcp
If you are the rightful owner of screen-control-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Screen Control MCP Server allows users to view and control screens, mouse, and keyboard across multiple displays.
Screen Control MCP Server
En MCP-server som ger dig möjlighet att se alla skärmar i operativsystemet och styra mus och tangentbord, så att du kan klicka var som helst på skärmen och skriva text.
Funktioner
- 📺 Skärmvisning: Ta skärmdumpar av alla skärmar eller specifika skärmar
- 🖱️ Mus-kontroll: Flytta muspekaren, klicka, dubbelklicka, scrolla
- ⌨️ Tangentbords-kontroll: Skriv text, tryck tangenter och tangentkombinationer
- 🖥️ Multi-skärm: Stöd för flera skärmar/displays
Installation
Förutsättningar
- Node.js 18 eller senare
- npm eller yarn
- macOS, Linux eller Windows
Steg
- Klona repot:
git clone https://github.com/peteraspenberg/screen-control-mcp.git
cd screen-control-mcp
- Installera dependencies:
npm install
Viktigt för macOS: robotjs kräver native compilation. Om du får fel vid installation:
# Installera Xcode Command Line Tools om de saknas
xcode-select --install
# Försök installera igen
npm install
- Bygg projektet:
npm run build
Konfiguration i Cursor
Lägg till följande i din Cursor MCP-konfiguration (t.ex. ~/.cursor/mcp.json eller motsvarande):
{
"mcpServers": {
"screen-control": {
"command": "node",
"args": ["/absolut/sökväg/till/screen-control-mcp/dist/index.js"]
}
}
}
Eller om du vill köra från projektmappen:
{
"mcpServers": {
"screen-control": {
"command": "node",
"args": ["/Users/peteraspenberg/screen-control-mcp/dist/index.js"]
}
}
}
Tillgängliga Tools
list_screens
Lista alla tillgängliga skärmar/displays på systemet.
capture_screen
Ta en skärmdump av en specifik skärm eller alla skärmar. Returnerar bilden som base64 data URI.
Parametrar:
screenId(optional): Skärm-ID att fånga (0-indexed). Om inte angiven, fångas alla skärmar.format(optional): Bildformat ("png" eller "jpg", standard: "png")
get_screen_info
Få information om alla skärmar (upplösning, position, etc.)
move_mouse
Flytta muspekaren till angivna koordinater.
Parametrar:
x: X-koordinaty: Y-koordinatscreenId(optional): Skärm-ID (0-indexed)
click_mouse
Klicka med musen på angivna koordinater.
Parametrar:
x: X-koordinaty: Y-koordinatbutton(optional): Musknapp ("left", "right", "middle", standard: "left")doubleClick(optional): Utför dubbelklick (standard: false)screenId(optional): Skärm-ID (0-indexed)
scroll_mouse
Scrolla mushjulet.
Parametrar:
x: X-koordinaty: Y-koordinatdirection: Scrollriktning ("up", "down", "left", "right")clicks(optional): Antal scroll-klick (standard: 3)screenId(optional): Skärm-ID (0-indexed)
type_text
Skriv text på aktuell markörposition eller angivna koordinater.
Parametrar:
text: Text att skrivax(optional): X-koordinat att klicka på innan skrivningy(optional): Y-koordinat att klicka på innan skrivningscreenId(optional): Skärm-ID (0-indexed)
press_key
Tryck en tangent eller tangentkombination.
Parametrar:
key: Tangent att trycka (t.ex. "enter", "tab", "space", "cmd+c", "ctrl+shift+t")
get_mouse_position
Få aktuell muspekareposition.
Exempel
Ta en skärmdump
{
"tool": "capture_screen",
"arguments": {
"screenId": 0,
"format": "png"
}
}
Klicka på skärmen
{
"tool": "click_mouse",
"arguments": {
"x": 100,
"y": 200,
"button": "left"
}
}
Skriv text
{
"tool": "type_text",
"arguments": {
"text": "Hej världen!",
"x": 500,
"y": 300
}
}
Tryck tangentkombination
{
"tool": "press_key",
"arguments": {
"key": "cmd+c"
}
}
Säkerhet
⚠️ VIKTIGT: Denna server ger full kontroll över din mus och tangentbord. Använd endast med seriösa AI-assistenter som du litar på. Se alltid till att:
- Endast köra från källor du litar på
- Inte exponera servern för obehöriga
- Vara medveten om vad AI:n gör när den använder dessa verktyg
Utveckling
# Bygg projektet
npm run build
# Bygg i watch-läge
npm run dev
# Starta servern direkt (för testning)
npm start
Licens
MIT
Bidrag
Bidrag är välkomna! Öppna gärna en issue eller pull request.