Skip to main content
Glama
ntk148v

alertmanager-mcp-server

by ntk148v

목차

Related MCP server: ilert

1. 서론

Prometheus Alertmanager MCP는 Prometheus Alertmanager용 모델 컨텍스트 프로토콜 (MCP) 서버입니다. AI 어시스턴트와 도구가 Alertmanager 리소스를 프로그래밍 방식으로 안전하게 쿼리하고 관리할 수 있도록 지원합니다.

2. 특징

  • [x] Alertmanager 상태, 경고, 무음, 수신자 및 경고 그룹 쿼리

  • [x] 침묵 생성, 업데이트 및 삭제

  • [x] 새 알림 만들기

  • [x] 인증 지원(환경 변수를 통한 기본 인증)

  • [x] Docker 컨테이너화 지원

3. 빠른 시작

3.1. 전제 조건

  • 파이썬 3.12+

  • uv (빠른 종속성 관리를 위해).

  • Docker(컨테이너화된 배포의 경우 선택 사항).

  • 이 MCP 서버를 실행할 환경에서 Prometheus Alertmanager 서버에 액세스할 수 있는지 확인하세요.

3.2. Smithery를 통한 설치

Smithery를 통해 Claude Desktop에 Prometheus Alertmanager MCP 서버를 자동으로 설치하려면:

지엑스피1

3.3. 로컬 실행

  • 저장소를 복제합니다.

# Clone the repository
$ git clone https://github.com/ntk148v/alertmanager-mcp-server.git
  • .env 파일이나 시스템 환경 변수를 통해 Prometheus 서버의 환경 변수를 구성합니다.

# 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을 다시 시작하세요.

  • 이제 Claude에게 자연어를 사용하여 Alertmanager와 상호 작용하도록 요청할 수 있습니다.

    • "현재 알림 표시"

    • "CPU 문제와 관련된 알림 필터링"

    • "이 알림에 대한 세부 정보 가져오기"

    • "이 알림에 대해 다음 2시간 동안 무음 설정을 합니다."

3.4. 도커 런

  • 미리 빌드된 이미지로 실행하세요(또는 직접 빌드할 수도 있습니다):

$ 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
  • Claude Desktop에서 Docker로 실행:

{
  "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"
      }
    }
  }
}

이 구성은 -e 플래그와 변수 이름만 사용하여 Claude Desktop에서 Docker 컨테이너로 환경 변수를 전달하고, env 객체에 실제 값을 제공합니다.

4. 도구

MCP 서버는 API v2 에 따라 Alertmanager를 쿼리하고 관리하기 위한 도구를 제공합니다.

  • 상태 가져오기: 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

ActivityInactive
ResponsivenessNo issues

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