Skip to main content
Glama
ntk148v

alertmanager-mcp-server

by ntk148v

Оглавление

Related MCP server: ilert

1. Введение

Prometheus Alertmanager MCP — это сервер Model Context Protocol (MCP) для Prometheus Alertmanager. Он позволяет помощникам и инструментам ИИ запрашивать и управлять ресурсами Alertmanager программно и безопасно.

2. Особенности

  • [x] Запрос статуса Alertmanager, оповещений, тишины, приемников и групп оповещений

  • [x] Создание, обновление и удаление тишины

  • [x] Создать новые оповещения

  • [x] Поддержка аутентификации (базовая аутентификация через переменные среды)

  • [x] Поддержка контейнеризации Docker

3. Быстрый старт

3.1 Предпосылки

  • Питон 3.12+

  • uv (для быстрого управления зависимостями).

  • Docker (опционально, для контейнерного развертывания).

  • Убедитесь, что ваш сервер Prometheus Alertmanager доступен из среды, в которой вы будете запускать этот сервер MCP.

3.2 Установка через Smithery

Чтобы автоматически установить Prometheus Alertmanager MCP Server для Claude Desktop через Smithery :

npx -y @smithery/cli install @ntk148v/alertmanager-mcp-server --client claude

3.3 Локальный запуск

  • Клонируйте репозиторий:

# Clone the repository
$ git clone https://github.com/ntk148v/alertmanager-mcp-server.git
  • Настройте переменные среды для вашего сервера Prometheus с помощью файла .env или системных переменных среды:

# Set environment variables (see .env.sample)
ALERTMANAGER_URL=http://your-alertmanager:9093
ALERTMANAGER_USERNAME=your_username  # optional
ALERTMANAGER_PASSWORD=your_password  # optional
  • Добавьте конфигурацию сервера в файл конфигурации клиента. Например, для Claude Desktop:

{
  "mcpServers": {
    "alertmanager": {
      "command": "uv",
      "args": [
        "--directory",
        "<full path to alertmanager-mcp-server directory>",
        "run",
        "src/alertmanager_mcp_server/server.py"
      ],
      "env": {
        "ALERTMANAGER_URL": "http://your-alertmanager:9093s",
        "ALERTMANAGER_USERNAME": "your_username",
        "ALERTMANAGER_PASSWORD": "your_password"
      }
    }
  }
}
  • Или установите его с помощью команды make:

$ make install
  • Перезапустите Claude Desktop, чтобы загрузить новую конфигурацию.

  • Теперь вы можете попросить Клода взаимодействовать с Alertmanager, используя естественный язык:

    • «Покажи мне текущие оповещения»

    • «Фильтрация оповещений, связанных с проблемами ЦП»

    • «Получить подробности по этому оповещению»

    • «Создать тишину для этого оповещения на следующие 2 часа»

3.4. Запуск Docker

  • Запустите его с помощью готового образа (или вы можете собрать его самостоятельно):

$ docker run -e ALERTMANAGER_URL=http://your-alertmanager:9093 \
    -e ALERTMANAGER_USERNAME=your_username \
    -e ALERTMANAGER_PASSWORD=your_password \
    -p 8000:8000 ghcr.io/ntk148v/alertmanager-mcp-server
  • Запуск с Docker в Claude Desktop:

{
  "mcpServers": {
    "alertmanager": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e", "ALERTMANAGER_URL",
        "-e", "ALERTMANAGER_USERNAME",
        "-e", "ALERTMANAGER_PASSWORD",
        "ghcr.io/ntk148v/alertmanager-mcp-server:latest"
      ],
      "env": {
        "ALERTMANAGER_URL": "http://your-alertmanager:9093s",
        "ALERTMANAGER_USERNAME": "your_username",
        "ALERTMANAGER_PASSWORD": "your_password"
      }
    }
  }
}

Эта конфигурация передает переменные среды из Claude Desktop в контейнер Docker, используя флаг -e только с именем переменной и предоставляя фактические значения в объекте env .

4. Инструменты

Сервер MCP предоставляет инструменты для запросов и управления Alertmanager, следуя его API v2 :

  • Получить статус: get_status()

  • Список оповещений: get_alerts()

  • Список тишины: get_silences()

  • Создать тишину: post_silence(silence_dict)

  • Удалить тишину: delete_silence(silence_id)

  • Список приемников: get_receivers()

  • Список групп оповещений: get_alert_groups()

Полную информацию об API см. в src/alertmanager_mcp_server/server.py .

5. Развитие

Вклады приветствуются! Пожалуйста, откройте тему или отправьте запрос на извлечение, если у вас есть какие-либо предложения или улучшения.

Этот проект использует uv для управления зависимостями. Установите uv, следуя инструкциям для вашей платформы.

# Clone the repository
$ git clone https://github.com/ntk148v/alertmanager-mcp-server.git
$ cd alertmanager-mcp-server
$ make setup
# Run test
$ make test
# Run in development mode
$ mcp dev
$ TRANSPORT_MODE=sse mcp dev

# Install in Claude Desktop
$ make install

6. Лицензия

Апач 2.0


Available Tools

9 tools
delete_silenceB

Delete a silence by its ID

ParametersJSON Schema
NameRequiredDescriptionDefault
silence_idYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates it is a destructive operation ('Delete'), but with no annotations, it fails to disclose additional behavioral details like reversibility, permissions, error handling (e.g., what happens if silence not found), or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no redundant words. It efficiently communicates the core action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete operation with one parameter, the description covers the basic functionality but lacks completeness by not mentioning success/failure behavior, error conditions, or integration with sibling tools (e.g., calling get_silence first to verify ID).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides no description for the single parameter (0% coverage), and the description only says 'by its ID' without adding semantic context such as format, source, or constraints. The parameter name is self-explanatory but the description adds no extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Delete', the resource 'silence', and the identifier 'by its ID'. It is a specific verb+resource combination that distinguishes it from sibling tools like get_silence or post_silence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, such as when a silence should be removed or preconditions like ensuring the ID exists. The description only states what it does, not when it should be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_alert_groupsD

Get a list of alert groups

ParametersJSON Schema
NameRequiredDescriptionDefault
silencedNo
inhibitedNo
activeNo
countNo
offsetNo

TDQS

D1.8/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, but it only states the basic function. It fails to disclose important behavioral traits like default parameter values, pagination (count/offset), or the significance of filtering fields (silenced, inhibited, active).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short (one sentence), but the conciseness comes at the expense of essential information. It is under-specified and not well-structured for effective tool selection.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, no output schema, and no annotations, the description is grossly incomplete. It provides no information about return values, filtering logic, pagination, or how alert groups relate to other resources.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 0%, meaning no parameter descriptions in the schema. The tool description itself mentions none of the five parameters, leaving the agent to guess the meaning of silenced, inhibited, active, count, and offset.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Get a list of alert groups', which is a clear verb and resource, but lacks context on what constitutes an alert group and does not differentiate from sibling tools like get_alerts or get_silences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as get_alerts or get_silences. The description does not mention any filtering or pagination behavior.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_alertsC

Get a list of alerts

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo
silencedNo
inhibitedNo
activeNo
countNo
offsetNo

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose behavioral traits like read-only nature, pagination, or rate limits. It only implies a read operation via 'get'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise at one sentence but may be too minimal for the tool's complexity. It is not verbose, but lacks substance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain alert behavior, filtering, pagination, or how to interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% with no parameter descriptions. The description adds no meaning to parameters like 'filter', 'silenced', or 'count'. Parameter names are partially self-explanatory but insufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Get a list of alerts' which is a clear verb+resource but lacks any differentiation from sibling tools like get_alert_groups or get_receivers. It is not a tautology but is vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as get_alert_groups or get_silences. There is no context about prerequisites or typical scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_receiversA

Get list of all receivers (name of notification integrations)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. However, the description only states the operation without mentioning side effects, read-only nature, or any resource constraints. It does not reveal whether this call is safe or has any impact on the system.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no extraneous words. It conveys the essential purpose efficiently. Every word earns its place, and the structure is front-loaded with the key action 'Get list of all receivers'.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description is adequate for a simple list retrieval. However, it could be more complete by specifying the return format (e.g., array of strings) or including a note about the data source. As is, it is sufficient but not exhaustive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so baseline is 4 per guidelines. The description adds meaning by explaining that receivers are 'names of notification integrations', which clarifies what the returned list represents. This provides value beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets a list of all receivers, further specifying they are names of notification integrations. The verb 'Get' and resource 'list of all receivers' is specific and unambiguous. Compared to sibling tools like get_alerts or get_silences, this tool is uniquely about receivers, so differentiation is clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. It does not specify scenarios where receivers are needed, nor does it mention any prerequisites or exclusions. The usage context is only implied by the tool's name and purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_silenceC

Get a silence by its ID

ParametersJSON Schema
NameRequiredDescriptionDefault
silence_idYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It only states the operation but does not disclose behavior on error (e.g., 404), authentication needs, rate limits, or side effects, which are important for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 6 words, highly concise and front-loaded. However, it may be too terse, missing opportunities to add value without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple get-by-ID operation, the minimal description is borderline adequate. However, without an output schema or behavioral details, an agent lacks information about return format or error handling, leaving gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the description adds no meaning beyond the schema. The parameter 'silence_id' is only mentioned implicitly via 'by its ID', but no format, validation, or source is explained. The schema itself provides only a title and type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Get a silence by its ID', clearly identifying the verb (Get) and resource (silence by ID). This distinguishes it from sibling tools like get_silences (list all) and delete_silence (delete), though it lacks additional context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. The description does not mention that it is for retrieving a single silence, while get_silences is for listing, nor does it provide prerequisites or context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_silencesC

Get list of all silences

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo
countNo
offsetNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only says 'Get list' implying a read operation but fails to disclose any other behavioral traits (e.g., idempotent, rate limits). Minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise but lacks structure. Could be expanded into a brief summary with parameter details without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 3 parameters, no output schema, and no annotations, the description is far from complete. It fails to address pagination, filtering, or expected return format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 3 parameters with 0% description coverage. Description does not explain filter, count, or offset, leaving the agent without guidance on how to use them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Get list' and resource 'silences', distinguishing from sibling get_silence (single item) and other mutation tools. However, it could explicitly mention that it returns a list of all silences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like get_silence or post_silence. No mention of pagination or filtering context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statusA

Get current status of an Alertmanager instance and its cluster

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It states the action but does not explicitly confirm it is read-only, nor does it disclose any behavioral traits like side effects or rate limits. However, the simplicity of the operation keeps this from being severely lacking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, short sentence that conveys the tool's purpose without any extraneous words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple zero-parameter tool with no output schema, the description adequately states the tool's purpose. Including what the return value contains (e.g., health info) would improve completeness, but the current level is sufficient for a basic status check.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the schema provides all necessary information. The description adds context that the status covers both the instance and its cluster, which is helpful beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('current status of an Alertmanager instance and its cluster'), clearly distinguishing it from sibling tools that deal with alerts, silences, and receivers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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, nor does it mention any prerequisites or context for invocation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_alertsC

Create new alerts

ParametersJSON Schema
NameRequiredDescriptionDefault
alertsYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. 'Create new alerts' does not disclose behavioral traits like idempotency, side effects, or requirements. It is insufficient for 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.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short (3 words), but it is under-specified rather than concise. It fails to provide necessary details, making it less useful despite its brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (flexible input schema, no output schema, no annotations), the description is inadequate. It does not explain return values, required fields, or constraints, leaving the agent without sufficient context to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning for the 'alerts' parameter. The parameter is an array of objects with additionalProperties: true, but the description does not clarify required fields, format, or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Create new alerts' clearly states the action (create) and the resource (alerts). It distinguishes from sibling tools like get_alerts (read) and delete_silence (delete).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as when to create alerts versus using get_alerts for reading. No context about prerequisites or typical usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

post_silenceC

Post a new silence or update an existing one

ParametersJSON Schema
NameRequiredDescriptionDefault
silenceYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It states a write operation (create/update) but fails to explain side effects, idempotency, permission requirements, or how updates are identified (likely by ID). The description is minimal and lacks crucial behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence) but omits necessary details about the parameter, behavior, and usage context. While front-loaded, it fails to justify its brevity by providing essential information, making it insufficient rather than efficiently concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a single complex nested parameter and no output schema or annotations, the description is woefully incomplete. It does not define the structure of the silence object, specify any field requirements, or describe the response, leaving the agent with significant ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has a single parameter 'silence' with no description and allows additional properties (0% schema description coverage). The description does not add any meaning or constraints to this parameter, leaving the agent without guidance on what fields or values are expected.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool can 'Post a new silence or update an existing one,' identifying its dual create/update nature. This distinguishes it from sibling tools like delete_silence (deletion) and get_silences (retrieval). However, the verb 'post' is somewhat ambiguous and could be more precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool over alternatives. The description does not mention prerequisites, context, or when not to use it (e.g., for reading silences). Usage is only implied by the action statement.

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.

  1. 3 tool updatesv1.0.0
    • Changedget_alert_groups2 fields changed
      • addedInput schema / properties / count
        Added value: +{
        +  "default": 3,
        +  "title": "Count",
        +  "type": "integer"
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "default": 0,
        +  "title": "Offset",
        +  "type": "integer"
        +}
    • Changedget_alerts2 fields changed
      • addedInput schema / properties / count
        Added value: +{
        +  "default": 10,
        +  "title": "Count",
        +  "type": "integer"
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "default": 0,
        +  "title": "Offset",
        +  "type": "integer"
        +}
    • Changedget_silences2 fields changed
      • addedInput schema / properties / count
        Added value: +{
        +  "default": 10,
        +  "title": "Count",
        +  "type": "integer"
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "default": 0,
        +  "title": "Offset",
        +  "type": "integer"
        +}
  2. 9 tool updates
    • First observeddelete_silence
    • First observedget_alert_groups
    • First observedget_alerts
    • First observedget_receivers
    • First observedget_silence
    • First observedget_silences
    • First observedget_status
    • First observedpost_alerts
    • First observedpost_silence

TDQS

B3.1/5.0
Disambiguation5/5

Each tool targets a distinct resource and action (e.g., get vs post, alerts vs silences vs status). There is no overlap; get_alert_groups and get_alerts are clearly differentiated.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with lowercase underscores: delete_, get_, post_. No mixing of styles or irregular verbs.

Tool Count5/5

With 9 tools covering common Alertmanager operations (list, get, create, delete for alerts and silences, plus status and receivers), the count is well-scoped for the domain.

Completeness4/5

Covers core alert and silence lifecycle management, status, and receivers. A minor gap: no tool to update alert fields or manage alert rules, but these are outside Alertmanager's typical CRUD.

Maintenance

ActivityStale
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    A Model Context Protocol server that enables AI assistants to query Prometheus metrics, discover available data, and analyze system performance through natural language interactions.
    5
    85
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol server that enables AI agents to interact directly with Prometheus metrics data through natural language queries.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    MCP server that enables AI assistants to query Grafana/Loki logs and Thanos/Prometheus metrics directly from MCP-compatible clients like Cursor or Claude Desktop.
    8
    MIT

Latest Blog Posts

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/ntk148v/alertmanager-mcp-server'

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