CloudZero
About
Integrates with CloudZero's v2 API to enable direct querying of cloud cost data, dimensions, budgets, and insights for financial teams analyzing spending patterns and optimization opportunities.
Details
- Author
- burkestar
- Repository
- burkestar/cloudzero-mcp
- GitHub stars
- 1
- License
- MIT License
- Categories
- Design, Workplace, Developer Tools, Search, API, Communication, Infrastructure
- Tags
- #visualization
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
CloudZeroCommand (node, npx, python, etc.)/Users/USERNAME/.local/bin/uvArguments-
Argument 1
run -
Argument 2
--with -
Argument 3
mcp[cli] -
Argument 4
mcp -
Argument 5
run -
Argument 6
/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py
Environment-
CLOUDZERO_API_KEY
YOUR_SECRET_KEY
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
To install the MCP server into Claude Desktop:
uv run mcp install server.py
Edit your claude_desktop_config.json to set the proper path to the uv command and update your USERNAME as below.
This config file can be located in Claude Desktop under Settings > Developer > Edit Config.
"CloudZero": {
"command": "/Users/USERNAME/.local/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
]
}
Restart Claude Desktop. When the Desktop starts, it will launch the server process in the background.
You may see errors, and can drill into the logs to see what the problem is.
If no errors, try asking "what tools are available for cloud billing" to see it listed.

See Claude Desktop MCP documentation for more info.
get_costs
Get billing data from the specified start_date to end_date.
get_dimensions
Retrieve billing dimensions.
list_budgets
List all budgets.
list_insights
List insights related to cloud costs.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"cloudzero": {
"env": {
"CLOUDZERO_API_KEY": "YOUR_SECRET_KEY"
},
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
],
"command": "/Users/USERNAME/.local/bin/uv"
}
}
}
Linux
{
"env": {
"CLOUDZERO_API_KEY": "YOUR_SECRET_KEY"
},
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
],
"command": "/Users/USERNAME/.local/bin/uv"
}
Macos
{
"env": {
"CLOUDZERO_API_KEY": "YOUR_SECRET_KEY"
},
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
],
"command": "/Users/USERNAME/.local/bin/uv"
}
Windows
{
"env": {
"CLOUDZERO_API_KEY": "YOUR_SECRET_KEY"
},
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
],
"command": "/Users/USERNAME/.local/bin/uv"
}
Cloudzero Model Context Protocol (MCP) server
Talk to your cloud cost data in Cloudzero from a Large Language Model (LLM).
Ask questions about your cost data such as plotting a month over month difference:

How it works
Uses CloudZero v2 API and the Model Context Protocol MCP.
graph LR
%%{init: {'theme':'neutral'}}%%
%% Define nodes
A[MCP Host]
B[Local MCP Server]
C[CloudZero API]
D[(Cloud Costs Data)]
%% Define connections
A -->|JSON-RPC 2.0| B
B -->|HTTP/JSON| C
C <--> D
subgraph CloudZero_SaaS
C
D
end
subgraph Background_process
B
end
subgraph Claude_Desktop
A
end
subgraph Local_Machine
Claude_Desktop
Background_process
end
%% Define styles
classDef client padding:10px
classDef server padding:10px
classDef api padding:10px
classDef db padding:10px
%% Apply styles
class A client
class B server
class C api
class D db
Once the MCP server is configured in Claude Desktop, it will be launched as a background process at
startup. Claude Desktop as the MCP Host will send an initiatize request to the MCP Server. The
server responds with its capabilities, which includes prompts and tools for tool calling.
The server implements several tools specific to CloudZero:
- get_costs to get billing data from start_date to end_date
- get_dimensions for billing dimensions
- list_budgets to list budgets
- list_insights to list insights
The MCP protocol uses JSON-RPC 2.0 for requests and responses.
Setup
Install Claude Desktop:
Install uv
Setup the project dependencies:
uv init
uv sync
Generate your CloudZero API key.
Edit .env with:
CLOUDZERO_API_KEY=YOUR_SECRET_KEY
Install
To install the MCP server into Claude Desktop:
uv run mcp install server.py
Edit your claude_desktop_config.json to set the proper path to the uv command and update your USERNAME as below.
This config file can be located in Claude Desktop under Settings > Developer > Edit Config.
"CloudZero": {
"command": "/Users/USERNAME/.local/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/Users/USERNAME/workspace/open_source/cloudzero-mcp/server.py"
]
}
Restart Claude Desktop. When the Desktop starts, it will launch the server process in the background.
You may see errors, and can drill into the logs to see what the problem is.
If no errors, try asking "what tools are available for cloud billing" to see it listed.

See Claude Desktop MCP documentation for more info.
Debug
For debugging, you can run the MCP development server with an interactive GUI to inspect:
uv run mcp dev server.py
This is useful for troubleshooting bugs in your code without having to continuously restart Claude Desktop.

Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





