Brev
OfficialThe Brev MCP server allows you to manage cloud infrastructure for workspaces and instances across multiple providers (AWS, GCP, Azure, Crusoe, Lambda Labs, Fluidstack, Launchpad, Akash, GCP Alpha).
You can:
Retrieve available instance types for specific cloud providers
Create workspaces by specifying name, instance type, and cloud provider
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Brevtrain a sentiment analysis model on my dataset"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Brev MCP server
This is a MCP server implementation for Brev.
Configuration
The MCP server uses the Brev CLI's API access token and currently set org.
Follow the Brev documentation to download the CLI and login if you haven't already.
If you want to switch your Brev org, run brev set <org-name>
The CLI access token expires every hour. If you have any 403 errors, simply run brev ls to refresh the access token.
Related MCP server: GCP Infrastructure MCP Server
Quickstart
Setup repository locally
git clone git@github.com:brevdev/brev-mcp.git
Install uv
Follow the uv installation guide
Claude Desktop
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Add the following to your claude_desktop_config.json:
"mcpServers": {
"brev_mcp": {
"command": "uv",
"args": [
"--directory",
"<path-to-repo>",
"run",
"brev-mcp"
]
}
}Development
Building and Publishing
To prepare the package for distribution:
Sync dependencies and update lockfile:
uv syncBuild package distributions:
uv buildThis will create source and wheel distributions in the dist/ directory.
Publish to PyPI:
uv publishNote: You'll need to set PyPI credentials via environment variables or command flags:
Token:
--tokenorUV_PUBLISH_TOKENOr username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm with this command:
npx @modelcontextprotocol/inspector uv --directory /Users/tmontfort/Brev/repos/brev_mcp run brev-mcpUpon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
Available Tools
2 toolscreate_workspaceC
Create a workspace from an instance type and cloud provider
| Name | Required | Description | Default |
|---|---|---|---|
| cloud_provider | Yes | The cloud provider for the workspace | |
| instance_type | No | The instance type of the workspace | |
| name | No | The name of the workspace |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states this is a creation tool, implying a write/mutation operation, but doesn't mention permission requirements, whether the operation is idempotent, what happens on failure, or any rate limits. This leaves significant behavioral gaps for a tool that creates resources.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any unnecessary words. It's appropriately sized and front-loaded with the essential information, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a resource creation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what a 'workspace' represents in this context, what happens after creation, whether there are dependencies or constraints, or what the return value might be. The combination of mutation behavior and lack of structured metadata creates significant contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with all parameters well-documented in the schema itself. The description mentions 'instance type and cloud provider' as inputs, which aligns with two of the three parameters, but doesn't add meaningful semantic context beyond what the schema already provides. The baseline of 3 is appropriate given the comprehensive schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and resource ('workspace') with specific inputs ('from an instance type and cloud provider'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from the sibling tool 'get_instance_types', which appears to be a read-only counterpart rather than a direct alternative for creation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives or any prerequisites for its use. While it mentions 'instance type and cloud provider' as inputs, it doesn't clarify if this is the only way to create a workspace or if there are other methods available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_instance_typesB
Get available instances types for a cloud provider
| Name | Required | Description | Default |
|---|---|---|---|
| cloud_provider | Yes | The cloud provider to get instance types for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'Get available instance types' but doesn't specify if this is a read-only operation, requires authentication, has rate limits, or what the output format might be. This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that efficiently conveys the tool's purpose without any unnecessary words. It is front-loaded and appropriately sized, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter with full schema coverage) and lack of output schema, the description is minimally adequate. However, it doesn't compensate for the absence of annotations or output details, leaving the agent with incomplete context about the tool's full behavior and results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'cloud_provider' well-documented in the schema, including an enum list. The description adds no additional meaning beyond what the schema provides, such as explaining the significance of the provider choice, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('available instance types for a cloud provider'), making the purpose immediately understandable. However, it doesn't differentiate from the sibling tool 'create_workspace', which is unrelated, so it doesn't fully earn the highest score for sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives or any prerequisites. It simply states what it does without context about timing, constraints, or comparisons to other tools, leaving the agent with minimal usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v1.0.0- First observed
create_workspace - First observed
get_instance_types
TDQS
The two tools have completely distinct purposes: one creates a workspace and the other retrieves instance types. There is no overlap in functionality, making it impossible for an agent to confuse them.
Both tools follow a consistent verb_noun naming pattern (create_workspace, get_instance_types). The verbs are clear and descriptive, and the style is uniform throughout.
With only two tools, the server feels thin for managing workspaces. It lacks essential operations like listing, updating, or deleting workspaces, which limits its utility for typical lifecycle management.
The toolset is severely incomplete for workspace management. It includes creation and instance type lookup but omits critical operations such as listing existing workspaces, updating configurations, or deleting workspaces, leaving significant gaps in coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Run AI models, create deployments, and manage predictions via cloud API
GPU cloud platform — create, manage, and monitor instances, snapshots, SSH keys, and billing.
Deploy apps on your cloud. Create environments, configure infrastructure, and monitor jobs.
Provision private AI model endpoints on dedicated GPUs (Llama, Qwen, Mistral). Pay per minute.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides GPU-accelerated gradient boosting model training and inference through a cloud service. Enables AI agents to train models on NVIDIA A10G GPUs and get fast cached predictions with portable model artifacts.1-
- FlicenseNot gradedqualityDmaintenanceProvides 30+ read-only tools for querying Google Cloud Platform infrastructure, designed for AI assistants and Terraform workflows.-
- AlicenseNot gradedqualityBmaintenanceEnables management of GCP resources and integration with AI development tools via a stateless MCP server hosted on Cloud Run.39MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to manage Google Cloud TPU VMs, including queueing, monitoring, bootstrapping, and SSH/tmux integration.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/brevdev/brev-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server