MCP Grafana vs Nslookup

A side-by-side look at the MCP Grafana and Nslookup MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

MCP Grafana logoMCP GrafanaMonitoring · Local subprocess (stdio)Search dashboards, investigate incidents and query datasources in your Grafana instance68GreatAuth: api key requiredNslookup logoNslookupMonitoring · Local subprocess (stdio)DNS lookups, SSL certificates, security scanning, and propagation checks via nslookup.io60GoodAuth: not declared

Verdict: choose MCP Grafana for monitoring work as a local process; choose Nslookup for monitoring as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

MCP Grafana logoChoose MCP Grafana when

  • You need dedicated capabilities in the Monitoring domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: GRAFANA_URL, GRAFANA_SERVICE_ACCOUNT_TOKEN.
  • You want tools like add_activity_to_incident, alerting_manage_routing, alerting_manage_rules.
Explore MCP Grafana

Nslookup logoChoose Nslookup when

  • You need dedicated capabilities in the Monitoring domain.
  • You prefer a local stdio subprocess transport.
  • You want tools like dns_lookup, dns_record, dns_propagation.
Explore Nslookup

Feature & specification comparison

Rows where the two servers differ are marked.

SpecMCP Grafana logoMCP GrafanaNslookup logoNslookup
CategoryMonitoringMonitoring
Quality signal68/100 · Great60/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthAPI key requiredNot declared
PricingFreeNot declared
Required env varsGRAFANA_URLGRAFANA_SERVICE_ACCOUNT_TOKENNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars3,58023
Directory activity 6 views 0 installs 0 upvotes 1 views 0 installs 0 upvotes
Tools8123

Tools & capabilities

MCP Grafana tools 81

  • add_activity_to_incidentAdd a note (userNote activity) to an existing incident's timeline using its ID. The note body can include URLs which will be attached as context. Use this to add context to an incident.
  • alerting_manage_routingManage Grafana alerting routing configuration, including notification policies, contact points and time intervals. Notification policies define how alerts are grouped, routed, and which contact points receive them. Time intervals define active/mute periods for alert notifications. When to use: - Understanding how alerts are routed to contact points/receivers - Debugging why an alert went to a specific receiver - Checking grouping, timing, or mute interval settings When NOT to use: - Checking alert rule configuration or state (use alerting_manage_rules)
  • alerting_manage_rulesManage Grafana alert rules with full CRUD capabilities and filtering. When to use: - Understanding why an alert is or isn't firing - Auditing alert rule configuration (queries, conditions, labels, notification settings) - Finding alert rules by state, folder, group, or name - Creating, updating, or deleting alert rules - Comparing rule versions to see what changed When NOT to use: - Checking how alerts are routed to receivers (use alerting_manage_routing)
  • alerting_manage_silencesManage Grafana alerting silences. A silence temporarily suppresses notifications for alerts whose labels match a set of matchers, without changing the alert rules themselves. Operations: - 'list': list existing silences. Optionally filter by rule_uid (matches the __alert_rule_uid__ label) or by matchers. - 'get': retrieve a single silence by silence_id. - 'create': create a new silence. Requires matchers, starts_at, ends_at (RFC3339) and comment. - 'update': modify an existing silence by silence_id. Requires matchers, starts_at, ends_at and comment. The id is only kept when the posted matchers and starts_at match the stored ones, so pass back the starts_at returned by 'get'; otherwise Alertmanager expires the old silence and returns a new id. - 'delete': expire/remove a silence by silence_id. When to use: - Muting noisy or expected alerts during maintenance windows - Inspecting or cleaning up existing silences When NOT to use: - Changing alert rule configuration or state (use alerting_manage_rules) - Changing how alerts are routed to receivers (use alerting_manage_routing)
  • analyze_loki_labelsAudits a Loki label strategy and optionally diagnoses query performance. Returns per-label verdicts, missing base labels, normalisation issues, and a recommended set. Pass datasourceUid for live cardinality or labels for static scoring; both may be combined.
  • check_datasources_healthCheck datasource health. Filter by type or UIDs; omit both to check all.
  • create_annotationCreate a new annotation on a dashboard or panel. Set format to 'graphite' and provide 'what' for Graphite-format annotations.
  • create_datasourceCreate a datasource. If type is ambiguous, call search_plugin_information first; install the plugin if needed. IMPORTANT: always call this tool twice. First call: provide only the type — the tool returns a field schema. After receiving the schema, you MUST ask the user for every required field value explicitly; do not infer or use defaults without user confirmation. Second call: provide the type, the display name in the top-level name argument, schemaReviewed=true, and the fields map populated with values confirmed by the user. Never handle credentials — remind the user to rotate any detected. Returns UID, health check, and a config page link.
  • create_folderCreate a Grafana folder. Provide a title and optional UID. Returns the created folder.
  • create_incidentCreate a new Grafana incident. Requires title, severity, and room prefix. Allows setting status, labels and custom fields. This tool should be used judiciously and sparingly, and only after confirmation from the user, as it may notify or alarm lots of people.
  • create_snapshotCreate a Grafana snapshot from a full dashboard payload. Supports optional expiration and external snapshot fields.
  • delete_annotationPermanently delete an annotation by ID. The annotation cannot be recovered afterwards.
  • +69 more on the listing page

Nslookup tools 23

  • dns_lookupLook up all common DNS records (A, AAAA, NS, MX, TXT, CNAME, SOA) for a domain. Returns results from a specified DNS server.
  • dns_recordLook up a specific DNS record type for a domain. Supports 53 record types including A, AAAA, MX, TXT, CNAME, SOA, PTR, CAA, SRV, DNSKEY, DS, TLSA, HTTPS, SPF, and more.
  • dns_propagationCheck DNS propagation for a domain across 18+ global DNS servers (Cloudflare, Google, Quad9, OpenDNS, regional servers, and authoritative nameservers). Shows if DNS changes have propagated worldwide.
  • webserversGet the IP addresses (both IPv4 and IPv6) for a domain by looking up A and AAAA records. Also returns the punycode and unicode domain representations.
  • ssl_certificateCheck the SSL/TLS certificate for a domain. Returns issuer, expiry date, days until expiry, certificate chain validity, cipher strength, SAN domains, fingerprint, and TLS protocol version.
  • bimi_vmcCheck BIMI (Brand Indicators for Message Identification) and VMC (Verified Mark Certificate) for a domain. Returns BIMI DNS record status, VMC certificate details, logo URL, trademark info, and expiry.
  • security_scanRun a security scan on a domain to detect DNS misconfigurations, missing SPF/DKIM/DMARC records, cookie security issues, and other web security vulnerabilities. Returns findings with severity levels (critical, high, medium, low, info).
  • uptime_checkPerform a one-time HTTP uptime check on a URL from a single location. Returns whether the site is up or down, HTTP status code, and response time in milliseconds. For multi-location checks, use uptime_check_multi instead.
  • uptime_check_multiCheck if a website is up or down from 7 global locations simultaneously: Amsterdam, Sydney, London, Frankfurt, Delhi, Warsaw, and South Carolina. Returns status, response time, and HTTP status code for each location.
  • dns_healthRun a comprehensive DNS health audit on a domain — 39 checks across 7 categories: DNSSEC (chain of trust, algorithms, validation), MX & email (PTR, MTA-STS, redundancy), DNS hygiene (SPF conflicts, wildcards, apex CNAME), TTL & SOA configuration, nameserver setup (diversity, lame delegation, EDNS0), CAA certificates, and operational maturity (security.txt, abuse mailbox). Returns an overall severity-weighted score (0–100) plus per-category scores.
  • geo_checkerCheck a domain's GEO (Generative Engine Optimization) score — how well the site is optimized for AI search engines like ChatGPT, Gemini, Claude, and Perplexity. Returns three scores (Technical Readiness, Entity Readiness, Answer Readiness), AI crawler access status, structured data analysis, and prioritized recommendations.
  • rdap_lookupLook up registration data (RDAP — the successor to WHOIS) for an IP address, AS number, or domain name. The query type is detected automatically. Returns the owning organization, network range/CIDR, RIR (ARIN, RIPE, APNIC, LACNIC, AFRINIC), country, status, registration/last-changed dates, nameservers, and abuse/registrant contacts, plus the raw RDAP JSON.
  • +11 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

MCP Grafana

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "grafana-mcp-grafana": {
      "command": "uvx",
      "args": [
        "mcp-grafana"
      ],
      "env": {
        "GRAFANA_URL": "YOUR_GRAFANA_URL_HERE",
        "GRAFANA_SERVICE_ACCOUNT_TOKEN": "YOUR_GRAFANA_SERVICE_ACCOUNT_TOKEN_HERE"
      }
    }
  }
}

Nslookup

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "nslookup": {
      "command": "npx",
      "args": [
        "-y",
        "@nslookup-io/mcp-server"
      ]
    }
  }
}

Frequently asked questions

MCP Grafana is categorized under Monitoring and uses a local stdio subprocess. Nslookup belongs to Monitoring and uses a local stdio subprocess. Pick MCP Grafana for monitoring work and Nslookup for monitoring.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

MCP Grafana is listed as free. Auth: api key required. Nslookup has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add grafana-mcp-grafana and nslookup as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, MCP Grafana has a quality signal of 68/100 (Great) with 6 views, 0 installs and 3,580 GitHub stars. Nslookup has 60/100 (Good) with 1 views, 0 installs and 23 GitHub stars.