The 10 tools fall into two halves that meet in the middle: Compute registers a function or command and submits it to an endpoint, Transfer finds collections, lists a directory on one and moves paths between two. Nothing here is synchronous — submitting returns a task, and globus_compute_get_task_status and globus_transfer_get_task_events are where results and progress actually come from, so an agent has to be built to wait. The registration step is separate from submission by design, which means a function registered once can be run repeatedly by ID.
The Globus project's own MCP server, covering Globus Compute and Globus Transfer.
- Compute endpoints the account can reach, filtered by the role held on them.
- Registration of work in two forms — a Python function body, or a shell command with a timeout — each with a description and a public flag.
- Task submission to a named endpoint with positional and keyword arguments, and status and results retrieved by task ID.
- Transfer collections found either by full-text filter across everything visible, or listed by scope, with paging.
- Directory listings on a collection, so a path can be checked before it is moved.
- Transfer tasks between two collections by source and destination path, with a label, and an event feed ordered newest first for watching one run.
A Globus account with access to the Compute endpoints and Transfer collections you name — every task is addressed by endpoint_id or by source_collection_id and destination_collection_id, which the listing and search tools return for the resources that account can see.
One command — uvx globus-mcp
