Skip to main content
Glama

Prometheus MCP Server

MIT License
24
  • Linux
  • Apple
import sys import pytest import logging from src.prometheus_mcp_server.server import get_config,list_resources,read_resource,list_tools,call_tool from src.prometheus_mcp_server.db_connector import PrometheusHandler # config logging logging.basicConfig( level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) logger = logging.getLogger("prometheus_mcp_server") prometheus_handler = PrometheusHandler(logger, get_config()['host']) def test_initialize(): get_config()['host'] @pytest.mark.asyncio async def test_list_tools(): tools = await list_tools() logger.info(tools) assert tools[0].name == "fetch_metric" @pytest.mark.asyncio async def test_list_resources(): resources = await list_resources() logger.info(resources) @pytest.mark.asyncio async def test_read_resource(): url = "prometheus://go_gc_heap_frees_by_size_bytes_bucket/metric" resource = await read_resource(url) logger.info(resource) @pytest.mark.asyncio async def test_call_valid_tool(tool_name="fetch_metric"): argument = { "metric_name": "go_gc_heap_frees_by_size_bytes_bucket", "metric_range":"5" } res = await call_tool(tool_name, argument) logger.info(f"res:{res[0]}") @pytest.mark.asyncio async def test_call_invalid_tool(): with pytest.raises(ValueError, match="Unknown tool"): await call_tool("invalid_tool", {})

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/CaesarYangs/prometheus_mcp_server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server