Skip to main content
Glama

Grafana MCP Server

package.json2.99 kB
{ "name": "grafana-mcp", "version": "1.0.0", "description": "Grafana MCP Server - AI-powered Grafana integration", "type": "module", "main": "build/main.js", "engines": { "node": ">=18.0.0", "npm": ">=8.0.0" }, "repository": { "type": "git", "url": "https://github.com/quanticsoul4772/grafana-mcp.git" }, "scripts": { "build": "tsc", "build:prod": "tsc -p tsconfig.prod.json", "build:analyze": "npm run build:prod && node -e \"console.log('Bundle Size Analysis:'); const fs=require('fs'); const path=require('path'); function getSize(dir){let size=0; const files=fs.readdirSync(dir); files.forEach(file=>{const filePath=path.join(dir,file); const stats=fs.statSync(filePath); if(stats.isDirectory()){size+=getSize(filePath)}else{size+=stats.size}}); return size} const distSize=getSize('./dist'); console.log('Total dist size:', Math.round(distSize/1024) + 'KB'); console.log('Per file:'); fs.readdirSync('./dist').forEach(file=>{const stats=fs.statSync('./dist/'+file); console.log('-', file+':', Math.round(stats.size/1024)+'KB')})\"", "dev": "tsx src/main.ts", "dev:optimized": "NODE_OPTIONS='--max-old-space-size=512 --optimize-for-size' tsx src/main.ts", "start": "node build/main.js", "start:optimized": "NODE_OPTIONS='--max-old-space-size=512 --optimize-for-size --gc-interval=100' node build/main.js", "clean": "rm -rf build dist", "prepare": "npm run build", "test": "vitest", "test:coverage": "vitest --coverage", "test:watch": "vitest --watch", "test:run": "vitest run", "lint": "eslint src --ext .ts --max-warnings 200", "lint:fix": "eslint src --ext .ts --fix", "format": "prettier --write \"src/**/*.{ts,json,md}\"", "format:check": "prettier --check \"src/**/*.{ts,json,md}\"", "type-check": "tsc --noEmit", "optimize": "npm run build:prod && npm run build:analyze", "perf:monitor": "NODE_OPTIONS='--expose-gc' node build/main.js", "bundle:deps": "npm ls --depth=0 --json > bundle-analysis.json && node -e \"const data=require('./bundle-analysis.json'); console.log('Dependencies Analysis:'); Object.entries(data.dependencies||{}).forEach(([name,info])=>console.log('-',name+':', info.version))\"" }, "keywords": [ "mcp", "grafana", "monitoring", "observability", "model-context-protocol", "prometheus", "loki", "alerting" ], "author": "quanticsoul4772", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.0.2", "axios": "^1.7.7", "dotenv": "^16.4.5", "zod": "^3.23.8", "zod-to-json-schema": "^3.24.6" }, "devDependencies": { "@eslint/js": "^9.34.0", "@types/node": "^22.9.0", "@typescript-eslint/eslint-plugin": "^8.42.0", "@typescript-eslint/parser": "^8.17.0", "@vitest/coverage-v8": "^2.1.9", "eslint": "^9.17.0", "jiti": "^2.5.1", "prettier": "^3.4.2", "tsx": "^4.20.5", "typescript": "^5.7.2", "vitest": "^2.1.8" } }

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/quanticsoul4772/grafana-mcp'

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