Skip to content

MCP server ​

Splitkick has a built-in Model Context Protocol server. With it, an agent can do almost everything that you do in the app: find and read sessions, create worktrees, start sessions and send them work, work in a graph, commit, push, open and merge a pull request, run a review. The server has 62 tools. That makes Splitkick a place where agents work together, not only side by side; see Cross-session workflows.

What is new

  • 1.5.3: add_artifact puts a file or link that the agent made into the Artifacts tab of a session. See Artifacts.
  • 1.5.1: list_instances and remote_tool let an agent use your other Splitkick instances, for example to start a session on another Mac and read its answer. See Work on your other Splitkick instances. Also: create_session takes over the empty "Session 1" of a worktree, get_current_context returns the graph links of the session, get_usage returns every Claude account, list_projects shows the project kind, and the git tools give an error for a plain project.
  • 1.4: Graph tools (1.4.1 added list_requests, list_changes and create_graph): agents read graphs, create and change nodes, send you requests and link sessions to nodes. See Graphs below and Graphs and agents.
  • 1.2: move_session moves a session to a worktree in another project too. Claude continues its own conversation there; other agents get the history replayed with the next message. A session with queued messages is refused; a running session moves when its turn ends. See Move and transfer sessions.
  • 1.1: add_follow_up puts a note on your follow-up list. list_all_sessions, search_sessions and get_current_context return a splitkick:// link for each session, which opens on click in a chat. A session that an agent starts shows "Started by '…'" at the top. A mode given with send_chat_message becomes the session's mode.

Set-up ​

The server is on by default for every agent in Splitkick, and Splitkick repairs the configuration on start. Turn it off or on in Settings → MCP Servers → Enable Splitkick MCP. In the same place you add third-party MCP servers for your sessions, with overrides per project.

Settings → MCP Servers: the Splitkick MCP server, its limits and the one-click install

Limits ​

Two settings in Settings → MCP Servers keep agents from running away. They apply to the tools that create, change or start something; tools that only read have no limit.

  • Max recursion depth (default 3, up to 10). A session that you start is level 0; a session that an agent starts is one level deeper than the session that started it. In a session deeper than the limit, these tools fail with an error.
  • Spawn rate limit (per minute) (default 20). How often one caller can use each of these tools in a minute.

Archive and delete cannot be undone from the MCP server. The server tells agents to ask you before they archive or delete anything.

Tools ​

Orientation ​

ToolWhat it does
get_current_contextThe calling session, worktree and project, with splitkick:// links. Also the graph links of the session (serves, with graph and node titles), its agentId and its graphPermission (read, write or manage)
get_project_contextProject settings, linked projects, default branch and agent, worktree counts
get_usagePlan usage for Claude, Codex and Grok, as in Settings → Usage. claude_accounts lists every Claude account you set up, with its label and usage

Projects ​

ToolWhat it does
list_projectsAll projects, with their kind: git, plain (a folder without git) or folder (a group in the sidebar)
add_projectAdd a git repository on disk as a project, or any folder as a plain project with plain: true
clone_projectClone a repository and add it
init_projectMake a new git repository and add it

Worktrees ​

ToolWhat it does
list_worktrees, get_worktreeThe worktrees of a project, or one worktree
create_worktreeA new worktree, also for a GitHub issue or PR or a Linear issue
create_worktree_from_existing_branchA worktree for a branch that exists
import_worktreeAdd a git worktree that is already on disk
rename_worktree, update_worktree_labelsName and labels
get_worktree_changes, get_worktree_diffChanged files and the diff, kept short
archive_worktree, unarchive_worktree, list_archived_worktreesArchive and restore
delete_worktree, permanently_delete_worktreeDelete for good, with the branch

Sessions ​

ToolWhat it does
list_all_sessionsEvery session in every project, with status, labels, pins and stars, linked issue or PR, and a link
search_sessionsFind a session by topic, in names and messages
list_sessionsThe sessions of one worktree
read_session_messagesThe latest messages of a session; only prompts, without tool calls, or cut to a length
get_session_statusIdle, running, error, … and the latest run
create_sessionA new session in a worktree, with the agent of your choice. Optional serves (graph links) and agentId (a saved agent; needs the manage permission). Takes over the empty "Session 1" of the worktree, see below
send_chat_messageSend a message; does not wait for the answer. Optional model (this turn only) and mode
cancel_session_runStop the running turn
set_session_modelModel and agent for the next turns
set_session_statusSet a manual status: idle, review, paused, completed or cancelled
add_follow_upA note on the session's follow-up list; never sent on its own
move_sessionMove a session to another worktree, also in another project
archive_session, unarchive_sessionArchive and restore

create_session does not leave an unused "Session 1" next to the new session. When the worktree's "Session 1" is its only session that is not archived, was never used, has nothing waiting and was not taken by an earlier create_session, the tool takes it over and returns its id. Otherwise it adds a new session. Worktrees that you create in the app keep their "Session 1".

Git and pull requests ​

ToolWhat it does
create_commitStage and commit with a generated message, push if asked
push_worktreePush the branch
detect_open_prThe open pull request of the branch, if there is one
create_pull_requestOpen a pull request with a generated title and text
merge_pull_requestMerge it with the method the repository allows
run_reviewSplitkick's AI review of the branch, with findings

The git tools give an error for a plain project (a project without git).

Issues and alerts ​

ToolWhat it does
list_github_issues, list_github_prsGitHub issues and pull requests of a project
list_security_issues, list_security_advisoriesDependabot alerts and security advisories
list_linear_issuesLinear issues of a project

Run and show ​

ToolWhat it does
get_run_environments, start_run_environmentThe dev servers Splitkick runs for a worktree (from splitkick.json)
open_in_browserShow a page or file (HTML report, image, PDF) in the worktree's browser pane
add_artifactPut a file or URL that the agent made (report, screenshot, HTML page, preview URL) into the Artifacts tab of a session. Again with the same target after a change, it adds a new version. See Artifacts

Graphs ​

Each graph tool needs a graph permission: read, write or manage. Every change needs a reason (why). See Graphs and agents.

ToolNeedsWhat it does
list_graphsreadAll graphs: id, title, type, file, node count, open requests
read_graphreadOne graph: its nodes with blocked, progress and active, the sessions on each node, and the open requests
list_requestsreadThe requests of a graph, newest first, with your answer once you gave it
list_changesreadThe change log of a graph, newest first: who changed what and why, and which changes you reverted. It marks nothing as seen
create_nodewriteAdd a node. A state other than proposed needs manage
update_nodewriteChange the title, description, properties, relations or attachments of a node
set_node_statewrite or manageSet the state. proposed needs write; committed, done and dropped need manage
send_requestwriteAsk you about a node: accept it as done, or pick an option in a decision
set_servesread or manageChange which nodes a session is linked to: replace the list, or add and remove. The own session needs no permission. Another session needs manage and a reason; you see the change in Review and can revert it
create_graphmanageCreate a graph file at a path, or inside a project's repo (default .splitkick/graphs/<slug>.yml)

Other Splitkick instances ​

ToolWhat it does
list_instancesThe instances you connected: name, id, URL, reachable, version
remote_toolRun one of the tools above on one of those instances; the result names the instance

Both instances need 1.5.1. Ids and links in a result belong to that instance. Graph changes are refused there, and the other instance cannot send the call on. Details and an example: Work on your other Splitkick instances.

Browser for agents ​

Splitkick can also give your agents a web browser, as a second MCP server in every CLI you installed. Choose the engine in Settings → MCP Servers → Browser for agents. See Browser for agents.