Modal MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| modal_env_listB | List all environments in the current workspace. |
| modal_env_createB | Create a new environment in the current workspace. |
| modal_env_deleteB | Delete an environment in the current workspace. |
| modal_env_updateC | Update environment-level settings. |
| modal_env_members_listA | List the members of a restricted Environment. |
| modal_env_members_updateA | Add or update a member's role in a restricted Environment. |
| modal_env_members_removeB | Remove a member from a restricted Environment. |
| modal_app_listA | List Apps that are running, deployed or recently stopped. |
| modal_app_historyB | Show an App's deployment history. |
| modal_app_logsC | Fetch logs for an App. |
| modal_app_stopA | Permanently stop an App and terminate its running containers. |
| modal_app_rollbackC | Redeploy a previous version of an App. |
| modal_app_rolloverA | Redeploy an App to get new containers without code changes. |
| modal_secret_listA | List your published secrets. |
| modal_secret_createC | Create a new secret. |
| modal_secret_deleteC | Delete a named Secret. |
| modal_volume_listB | List the details of all modal.Volume volumes in an Environment. |
| modal_volume_createB | Create a named, persistent modal.Volume. |
| modal_volume_deleteA | Delete a named Volume and all of its data. |
| modal_volume_lsB | List files and directories in a modal.Volume volume. |
| modal_volume_putB | Upload a file or directory to a modal.Volume. |
| modal_volume_getB | Download files from a modal.Volume object. |
| modal_volume_rmB | Delete a file or directory from a modal.Volume. |
| modal_volume_renameB | Rename a modal.Volume. |
| modal_container_listA | List all containers that are currently running. |
| modal_container_execB | Execute a command in a container. |
| modal_container_logsB | Fetch logs for a specific container. |
| modal_container_stopB | Terminate a running container. |
| modal_deployC | Deploy a Modal application. |
| modal_runC | Run a Modal function or local entrypoint. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 30 tools
Each tool targets a distinct resource and action, with no overlapping purposes. The few similar operations (e.g., app_stop vs. container_stop) are clearly differentiated by resource scope and descriptions.
The predominant pattern modal_<resource>_<action> is consistent across most tools. Two tools (modal_deploy, modal_run) omit the resource prefix, causing minor deviation, but the overall scheme remains predictable and readable.
With 30 tools, the set is above the ideal 3-15 range and falls into the heavy category. However, the broad scope of Modal (environments, apps, secrets, volumes, containers, deployments) justifies the number, even though it feels dense.
The tool surface covers most lifecycle operations for each resource: environments have full CRUD, apps have management and deployment actions, volumes include file operations, and containers have exec/logs/stop. A notable gap is the lack of a secret update operation, but agents can work around by deleting and recreating.