This commit is contained in:
ray zhou
2026-05-29 17:23:17 +08:00
parent f71a5c59af
commit 1bcb6120dd
139 changed files with 4229 additions and 523 deletions

View File

@@ -3,10 +3,14 @@ The cursor-app-control MCP allows you to control the Cursor application itself.
- Move the current agent to a verbatim clone of the current workspace (move_agent_to_cloned_root) — use this ONLY when the target is a sibling clone already on the agent's branch (for example from cursorfs-clone); skips the migration git fetch / ff-merge that the generic move performs
- Create a new project at a given path (create_project) — creates the directory if missing and initializes a git repository. Use this to bootstrap a new project before moving to it with move_agent_to_root
- Open a resource by URI in Glass (open_resource) — opens files in the right-hand editor panel (workspace paths or anything under ~/.cursor), focuses terminals, opens output channels, opens web links according to the Glass browser setting, or delegates other schemes to the default workbench opener
- Manage personal rules in Cursor Settings (manage_personal_rules) — list, add, update, or delete user rules after asking what the user wants Cursor to remember
- Open the Automations UI in Glass (open_automation) — opens the new automation form, with optional templateId and structured prefillWorkflowData sent only to the active Glass view
- Run Cursor-specific actions (cursor_dialog) — currently supports item="rule" and scope="user" with action="list", "add", "update", or "remove" for user rules after asking what the user wants Cursor to remember
- Rename the current chat conversation (rename_chat) — sets the current chat title to the provided value
Use move_agent_to_root when you want the current conversation to adopt a different root workspace directory. This updates the visible work surface and the default cwd for new terminals.
Use move_agent_to_cloned_root when the target is a freshly-made sibling clone of the current workspace.
Use create_project when you need to create a brand new project directory with an initialized git repository.
Use open_resource when you need to reveal a file, terminal, output channel, or URL for the current agent.
Use manage_personal_rules for onboarding and preference-learning workflows. Always list first to avoid duplicate memories, and only write rules the user has agreed should be remembered.
Use open_automation when you need to show or prefill the Glass Automations UI; never put raw automation prefill payloads in cursor:// URLs.
Use rename_chat when you need to set a specific title for the current chat conversation.
Use cursor_dialog for onboarding and preference-learning workflows. Always list rules first to avoid duplicate memories, and only write rules the user has agreed should be remembered.

View File

@@ -1,6 +1,6 @@
{
"name": "move_agent_to_root",
"description": "Move the current agent to a new root workspace directory. Use this after creating a worktree or whenever the conversation should continue from a different workspace root.",
"description": "Move the current agent to a new root workspace directory. Use this after creating a worktree or whenever the conversation should continue from a different workspace root. If the destination was just produced by `cursorfs-clone` (under `~/.cursor/cursorfs-clone/...`), use `move_agent_to_cloned_root` instead — this generic tool runs `git fetch origin <branch>` against the destination and will fail with \"Remote branch not found on origin\" on local-only branches.",
"arguments": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [

View File

@@ -0,0 +1,40 @@
{
"name": "open_automation",
"description": "Open the Glass Automations UI, optionally opening an existing automation by automationId or starting a new automation from a templateId and/or structured prefillWorkflowData. Use this instead of opening cursor.com automation URLs or putting raw prefill data in cursor:// URLs. Calls with prefillWorkflowData require tool approval before the data is trusted by the form, and prefill data is sent only to the active Glass view.",
"arguments": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"automationId": {
"description": "Optional existing automation id to open in the Automations UI.",
"type": "string",
"minLength": 1,
"maxLength": 512
},
"view": {
"description": "Which existing automation view to open. Defaults to edit. Requires automationId.",
"type": "string",
"enum": [
"edit",
"view",
"runs"
]
},
"templateId": {
"description": "Optional automation template id to preselect in the new automation form.",
"type": "string",
"minLength": 1,
"maxLength": 512
},
"prefillWorkflowData": {
"description": "Optional workflow data JSON object used to prefill the new automation form. The payload is sent only to the active Glass view and is not put in a URL or browser storage.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"additionalProperties": false
}
}

View File

@@ -0,0 +1,20 @@
{
"name": "rename_chat",
"description": "Rename the current chat conversation tab title. Uses the active conversation when composerId is not provided by the caller.",
"arguments": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"title": {
"description": "New title for the current chat conversation.",
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"title"
],
"additionalProperties": false
}
}