Monitoring Go ★ 184

VictoriaMetrics/mcp-victoriametrics

VictoriaMetrics instance'larınızın API'leri ve dokümantasyonu ile kapsamlı entegrasyon sağlayarak, monitoring, observability ve debugging görevlerini kolaylaştırır.

Claude Desktop config.json'a ekle

{
  "mcpServers": {
    "victoriametrics-mcp-victoriametrics": {
      "command": "node",
      "args": [
        "~/.mcp/mcp-victoriametrics/index.js"
      ]
    }
  }
}

VictoriaMetrics MCP Sunucusu

Latest Release Trust Score License Slack X Reddit

Model Context Protocol (MCP) sunucusunun VictoriaMetrics için uygulaması.

Bu, VictoriaMetrics örneğinize erişim ve VictoriaMetrics API'leri ve dokümantasyonuyla sorunsuz entegrasyon sağlar. İzleme, gözlemlenebilirlik ve VictoriaMetrics örneklerinizle ilgili hata ayıklama görevleri için kapsamlı bir arayüz sunar ve mühendisler ile araçlar için gelişmiş otomasyon ve etkileşim yeteneklerini etkinleştirir.

Özellikler

Bu MCP sunucusu, VictoriaMetrics'in neredeyse tüm salt okunur API'lerini, yani VMUI'de mevcut olan tüm işlevleri kullanmanıza olanak tanır:

  • Metrikleri sorgulamak ve verileri keşfetmek (istemciniz destekliyorsa grafikler çizebilir)
  • Kullanılabilir metrikleri, etiketleri, etiket değerlerini ve tüm serileri listeleme ve dışa aktarma
  • Uyarı ve kayıt kurallarınızı ve uyarıları analiz etme ve test etme
  • VictoriaMetrics örneğinizin parametrelerini gösterme
  • Verilerinizin ve metriklerin kullanımının kardinalitesini keşfetme
  • Sorgularınızı analiz etme, izleme, düzenleme ve açıklama
  • Etiket yeniden atama kurallarınızı, alt örnekleme ve saklama ilkesi konfigürasyonlarınızda hata ayıklama
  • VictoriaMetrics Cloud ile entegrasyon
  • Kök endpoint üzerinde kurulum talimatları ve araçlar incelemesi ile UI (yalnızca Streamable HTTP modunda)

Buna ek olarak, MCP sunucusu gömülü güncel dokümantasyon içerir ve çevrimiçi erişim olmadan içinde arama yapabilir.

image

Mevcut araçlar ve istemler hakkında daha fazla ayrıntı Kullanım bölümünde bulunabilir.

Araçların işlevselliğini, istemlerinizde belge aramasını birleştirebilir ve VictoriaMetrics örneğiniz için harika kullanım senaryoları tasarlayabilirsiniz. Nasıl çalışabileceğini görmek için Dialog örneği bölümünü kontrol edin. Ve MCP Sunucusunun ve yanıtlarının kalitesinin çok fazla istemcinizin yeteneklerine ve kullanmakta olduğunuz modelin kalitesine bağlı olduğunu lütfen unutmayın.

Ayrıca MCP sunucusunu diğer gözlemlenebilirlik veya belge araması ile ilgili MCP Sunucularıyla birleştirebilir ve daha da güçlü sonuçlar elde edebilirsiniz.

Kurulum olmadan deneyin

Kurulum yapmadan özellikleri test etmek için kullanabileceğiniz herkese açık bir VictoriaMetrics MCP Sunucusu örneği mevcuttur:

https://play-mcp.victoriametrics.com/mcp

Dikkat! Bu URL tarayıcıda açılması için tasarlanmamıştır, MCP istemcilerde kullanılmak için tasarlanmıştır.

Streamable HTTP modunda mevcuttur ve Public VictoriaMetrics Playground ile çalışmak üzere yapılandırılmıştır.

Claude Desktop için yapılandırma örneği:

image

Gereksinimler

Kurulum

İkili Dosyalar

Sadece Releases sayfasından en son sürümü indirin ve PATH'e koyun.

Linux x86_64 için örnek (diğer mimariler ve platformlar da mevcuttur):

latest=$(curl -s https://api.github.com/repos/VictoriaMetrics/mcp-victoriametrics/releases/latest | grep 'tag_name' | cut -d\" -f4)
wget https://github.com/VictoriaMetrics/mcp-victoriametrics/releases/download/$latest/mcp-victoriametrics_Linux_x86_64.tar.gz
tar axvf mcp-victoriametrics_Linux_x86_64.tar.gz

Docker

VictoriaMetrics MCP Sunucusunu Docker kullanarak çalıştırabilirsiniz.

Bu, Go'yu kurmaya veya kaynaktan oluşturmaya gerek kalmadan başlamak için en kolay yoldur.

docker run -d --name mcp-victoriametrics \
  -e VM_INSTANCE_ENTRYPOINT=https://play.victoriametrics.com \
  -e VM_INSTANCE_TYPE=cluster \
  -e MCP_SERVER_MODE=sse \
  -e MCP_LISTEN_ADDR=:8080 \
  -p 8080:8080 \
  ghcr.io/victoriametrics/mcp-victoriametrics

Ortam değişkenlerini kendi parametrelerinizle değiştirmelisiniz.

MCP_SERVER_MODE=http bayrağının Streamable HTTP modunu etkinleştirmek için kullanıldığını unutmayın. Sunucu modları hakkında daha fazla ayrıntı Konfigürasyon bölümünde bulunabilir.

GitHub kayıt defterinde mevcut docker görüntülerini görüntüleyin.

Ayrıca Docker'ı stdio modundaki istemciler ile MCP sunucusu ile kullanmak hakkında daha fazla ayrıntı için Docker'ı ikili dosya yerine kullanma bölümüne bakın.

Kaynak Kodu

Kaynaktan ikili dosya oluşturmak için aşağıdaki yaklaşımı kullanabilirsiniz:

  • Depoyu klonlayın:

    git clone https://github.com/VictoriaMetrics/mcp-victoriametrics.git
    cd mcp-victoriametrics
    
  • Klonlanan kaynak koddan ikili dosya oluşturun:

    make build
    # bundan sonra mcp-victoriametrics ikili dosyasını bulabilir ve bu dosyayı PATH'e kopyalayabilir veya yerinde çalıştırabilirsiniz
    
  • Klonlanan kaynak koddan görüntü oluşturun:

    docker build -t mcp-victoriametrics .
    # bundan sonra mcp-victoriametrics docker görüntüsünü çalıştırma veya gönderme için kullanabilirsiniz
    

Helm

Helm kullanarak kurulum hakkında daha fazla ayrıntı için VictoriaMetrics MCP Sunucusu Helm grafiğine bakın.

Konfigürasyon

VictoriaMetrics için MCP Sunucusu, ortam değişkenleri aracılığıyla yapılandırılır:

Değişken Açıklama Gerekli Varsayılan İzin Verilen Değerler
VM_INSTANCE_ENTRYPOINT / VMC_API_KEY VictoriaMetrics örneğine URL (vmsingle veya vmselect'in kök / URL'si olmalıdır) Evet (VMC_API_KEY kullanmıyorsanız) - -
VM_INSTANCE_TYPE VictoriaMetrics örneğinin türü Evet (VMC_API_KEY kullanmıyorsanız) - single, cluster
VM_INSTANCE_BEARER_TOKEN VictoriaMetrics API için kimlik doğrulama tokeni Hayır - -
VM_INSTANCE_HEADERS İsteklerle gönderilecek özel HTTP başlıkları (virgülle ayrılmış anahtar=değer çiftleri) Hayır - -
MCP_PASSTHROUGH_HEADERS Gelen MCP isteklerinden VictoriaMetrics'e iletilecek HTTP başlık adları (virgülle ayrılmış liste). Çarpışmada VM_INSTANCE_HEADERS öğesini geçersiz kılar. Yalnızca sse/http modlarında geçerlidir. Hayır - -
VM_DEFAULT_TENANT_ID Küme modu için varsayılan kiracı ID'si. Biçim: accountID veya accountID:projectID (32 bitlik tamsayılar). VictoriaMetrics küme belgelerine bakın Hayır 0 -
VMC_API_KEY VictoriaMetrics Cloud Konsolundan API anahtarı Hayır - -
MCP_SERVER_MODE Sunucu çalışma modu. Ayrıntılar için Modlar'a bakın. Hayır stdio stdio, sse, http
MCP_LISTEN_ADDR SSE veya HTTP sunucusunun dinleyeceği adres Hayır localhost:8080 -
MCP_DISABLED_TOOLS Devre dışı bırakılacak araçların virgülle ayrılmış listesi Hayır 'export,flags,metric_relabel_debug,downsampling_filters_debug,retention_filters_debug,test_rules' -
MCP_DISABLE_RESOURCES Tüm kaynakları devre dışı bırakın (dokümantasyon aracı çalışmaya devam edecek) Hayır false false, true
MCP_HEARTBEAT_INTERVAL Streamable-http protokolü için sinyal aralığını tanımlar.
Bu, MCP sunucusunun GET bağlantısı aracılığıyla istemciye sinyal göndereceği anlamına gelir,
bağlantının ağ altyapısı (ör. ağ geçitleri) tarafından kapatılmasını önlemek için
Hayır 30s -
MCP_LOG_FORMAT Günlük çıktı biçimi Hayır text text, json
MCP_LOG_LEVEL Minimum günlük seviyesi Hayır info debug, info, warn, error

VictoriaMetrics örneğinize bağlanmak için iki seçenek kullanabilirsiniz:

  • Herhangi bir tek düğüm veya küme VictoriaMetrics örneğine bağlanmak için VM_INSTANCE_ENTRYPOINT + VM_INSTANCE_TYPE + VM_INSTANCE_BEARER_TOKEN (isteğe bağlı) ortam değişkenlerini kullanma.
  • VictoriaMetrics Cloud örneklerinizle çalışmak için VMC_API_KEY ortam değişkenini kullanma.

Modlar

MCP Sunucusu aşağıdaki çalışma modlarını (taşımaları) destekler:

  • stdio - Standart giriş/çıkış modu, sunucunun standart girdiden komutları okuduğu ve cevapları standart çıktıya yazdığı durum. Bu varsayılan moddur ve yerel sunucular için uygundur.
  • sse - Sunucu Tarafından Gönderilen Olaylar. Sunucu, SSE bağlantıları için /sse ve /message uç noktalarını açığa çıkaracaktır.
  • http - Streamable HTTP. Sunucu, HTTP bağlantıları için /mcp uç noktasını açığa çıkaracaktır.

Taşımalar hakkında daha fazla bilgiyi MCP belgelerinde bulabilirsiniz:

Konfigürasyon Örnekleri

# Tek düğüm örneği için
export VM_INSTANCE_ENTRYPOINT="http://localhost:8428"
export VM_INSTANCE_TYPE="single"
export VM_INSTANCE_BEARER_TOKEN="your-token"
export MCP_PASSTHROUGH_HEADERS="X-Token,X-Access-Key"

# Küme için
export VM_INSTANCE_ENTRYPOINT="https://play.victoriametrics.com"
export VM_INSTANCE_TYPE="cluster"
export MCP_DISABLED_TOOLS="export,metric_statistics,test_rules" # dışa aktarma, istatistikler ve kurallar birim test araçlarını devre dışı bırakın

# VictoriaMetrics Cloud için
export VMC_API_KEY="<you-api-key>"

# Sunucu modu
export MCP_SERVER_MODE="sse"
export MCP_LISTEN_ADDR="0.0.0.0:8080"

# Kimlik doğrulama için özel başlıklar (ör. ters proxy arkasında)
# Beklenen sözdizimi virgülle ayrılmış anahtar=değer çiftleridir
export VM_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

Uç Noktalar

SSE ve HTTP modlarında MCP sunucusu aşağıdaki uç noktaları sağlar:

Uç Nokta Açıklama
/ Kurulum yardımı ve araç incelemesi ile açılış sayfası
/sse + /message SSE modundaki iletiler için uç noktalar (SSE'yi destekleyen MCP istemcileri için)
/mcp HTTP modundaki iletileri akışında almak için HTTP uç noktası (Streamable HTTP'yi destekleyen MCP istemcileri için)
/metrics MCP sunucusunu izlemek için Prometheus biçimindeki metrikler
/health/liveness Sunucunun çalışıyor olduğundan emin olmak için canlılık denetimi uç noktası
/health/readiness Sunucunun istekleri kabul etmeye hazır olduğundan emin olmak için hazırlık denetimi uç noktası

İstemcilerde Kurulum

Cursor

Gidin: Settings -> Cursor Settings -> MCP -> Add new global MCP server ve aşağıdaki yapılandırmayı Cursor ~/.cursor/mcp.json dosyasına yapıştırın:

{
  "mcpServers": {
    "victoriametrics": {
      "command": "/path/to/mcp-victoriametrics",
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Daha fazla bilgi için Cursor MCP belgelerine bakın.

Claude Desktop

Bunu Claude Desktop claude_desktop_config.json dosyasına ekleyin (Settings -> Developer -> Edit config açarsanız bulabilirsiniz):

{
  "mcpServers": {
    "victoriametrics": {
      "command": "/path/to/mcp-victoriametrics",
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Daha fazla bilgi için Claude Desktop MCP belgelerine bakın.

Claude Code

Komutu çalıştırın:

claude mcp add victoriametrics -- /path/to/mcp-victoriametrics \
  -e VM_INSTANCE_ENTRYPOINT=<YOUR_VM_INSTANCE> \
  -e VM_INSTANCE_TYPE=<YOUR_VM_INSTANCE_TYPE>
  -e VM_INSTANCE_BEARER_TOKEN=<YOUR_VM_BEARER_TOKEN>
  -e VM_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

Daha fazla bilgi için Claude Code MCP belgelerine bakın.

Codex

Codex CLI ve IDE uzantısı aynı MCP yapılandırma dosyasını kullanır: ~/.codex/config.toml (veya güvenilir bir projede .codex/config.toml).

Komutu çalıştırın:

codex mcp add victoriametrics \
  --env VM_INSTANCE_ENTRYPOINT=<YOUR_VM_INSTANCE> \
  --env VM_INSTANCE_TYPE=<YOUR_VM_INSTANCE_TYPE> \
  --env VM_INSTANCE_BEARER_TOKEN=<YOUR_VM_BEARER_TOKEN> \
  --env VM_INSTANCE_HEADERS="<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>" \
  -- /path/to/mcp-victoriametrics

Veya aşağıdaki bölümü Codex ~/.codex/config.toml dosyasına ekleyin:

[mcp_servers.victoriametrics]
command = "/path/to/mcp-victoriametrics"

[mcp_servers.victoriametrics.env]
VM_INSTANCE_ENTRYPOINT = "<YOUR_VM_INSTANCE>"
VM_INSTANCE_TYPE = "<YOUR_VM_INSTANCE_TYPE>"
VM_INSTANCE_BEARER_TOKEN = "<YOUR_VM_BEARER_TOKEN>"
VM_INSTANCE_HEADERS = "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"

Sunucuyu Streamable HTTP modunda çalıştırıyorsanız, bunu şu şekilde kaydedebilirsiniz:

codex mcp add victoriametrics --url http://localhost:8080/mcp

Daha fazla bilgi için Codex MCP belgelerine bakın.

Visual Studio Code

Bunu VS Code MCP yapılandırma dosyasına ekleyin:

{
  "servers": {
    "victoriametrics": {
      "type": "stdio",
      "command": "/path/to/mcp-victoriametrics",
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Daha fazla bilgi için VS Code MCP belgelerine bakın.

Zed

Aşağıdakileri Zed yapılandırma dosyasına ekleyin:

  "context_servers": {
    "victoriametrics": {
      "command": {
        "path": "/path/to/mcp-victoriametrics",
        "args": [],
        "env": {
          "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
          "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
          "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
          "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
        }
      },
      "settings": {}
    }
  }

Daha fazla bilgi için Zed MCP belgelerine bakın.

JetBrains IDE'leri

  • Settings -> Tools -> AI Assistant -> Model Context Protocol (MCP) seçeneğine gidin.
  • Add (+) seçeneğine tıklayın
  • As JSON seçeneğini belirleyin
  • Aşağıdakileri giriş alanına yapıştırın:
{
  "mcpServers": {
    "victoriametrics": {
      "command": "/path/to/mcp-victoriametrics",
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Windsurf

Aşağıdakileri Windsurf MCP yapılandırma dosyasına ekleyin.

{
  "mcpServers": {
    "victoriametrics": {
      "command": "/path/to/mcp-victoriametrics",
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Daha fazla bilgi için Windsurf MCP belgelerine bakın.

Docker yerine İkili Dosya Kullanma

Yerel ikili dosya yerine Docker kullanarak VictoriaMetrics MCP sunucusunu çalıştırabilirsiniz.

Yukarıdaki yapılandırma örneklerinde çalıştırma komutunu aşağıdaki şekilde değiştirmelisiniz:

{
  "mcpServers": {
    "victoriametrics": {
      "command": "docker",
        "args": [
          "run",
          "-i", "--rm",
          "-e", "VM_INSTANCE_ENTRYPOINT",
          "-e", "VM_INSTANCE_TYPE",
          "-e", "VM_INSTANCE_BEARER_TOKEN",
          "-e", "VM_INSTANCE_HEADERS",
          "ghcr.io/victoriametrics/mcp-victoriametrics",
        ],
      "env": {
        "VM_INSTANCE_ENTRYPOINT": "<YOUR_VM_INSTANCE>",
        "VM_INSTANCE_TYPE": "<YOUR_VM_INSTANCE_TYPE>",
        "VM_INSTANCE_BEARER_TOKEN": "<YOUR_VM_BEARER_TOKEN>",
        "VM_INSTANCE_HEADERS": "<HEADER>=<HEADER_VALUE>,<HEADER>=<HEADER_VALUE>"
      }
    }
  }
}

Kullanım

Kurulum ve [istemcilerde kur

Benzer MCP sunucuları

Daha fazla: Monitoring →