File tree Expand file tree Collapse file tree 3 files changed +99
-1
lines changed Expand file tree Collapse file tree 3 files changed +99
-1
lines changed Original file line number Diff line number Diff line change 3131            latest 
3232            ${{ steps.tag.outputs.version }} 
3333push : true 
34+ 
35+   mcp-registry :
36+     runs-on : ubuntu-latest 
37+     needs : docker 
38+     permissions :
39+       contents : read 
40+       id-token : write 
41+     steps :
42+       - name : Checkout code 
43+         uses : actions/checkout@v5 
44+         with :
45+           fetch-depth : 0 
46+ 
47+       - name : Extract version from tag 
48+         id : version 
49+         run : | 
50+           # Get the tag from the triggering workflow 
51+           TAG=$(git describe --tags --exact-match HEAD 2>/dev/null || echo "") 
52+           if [ -z "$TAG" ]; then 
53+             echo "No tag found at HEAD" 
54+             exit 1 
55+           fi 
56+           echo "VERSION=$TAG" >> $GITHUB_OUTPUT 
57+ 
58+ name : Install dependencies 
59+         run : | 
60+           sudo apt-get update && sudo apt-get install -y jq 
61+           curl -L "https://github.com/modelcontextprotocol/registry/releases/download/v1.2.3/mcp-publisher_1.2.3_linux_amd64.tar.gz" | tar xz mcp-publisher 
62+           chmod +x mcp-publisher 
63+           sudo mv mcp-publisher /usr/local/bin/ 
64+ 
65+ name : Update server.json with Docker image 
66+         run : | 
67+           # Update the server.json with the correct Docker image reference 
68+           # (note the image tag does not include the "v" prefix) 
69+           jq --arg version "${{ steps.version.outputs.VERSION }}" \ 
70+              --arg image "grafana/mcp-grafana:${{ steps.version.outputs.VERSION#v }}" \ 
71+              '.packages[0].version = $version | 
72+               .packages[0].identifier = $image | 
73+               .version = $version' server.json > server.json.tmp 
74+           mv server.json.tmp server.json 
75+ 
76+ name : Login to MCP Registry 
77+         run : mcp-publisher login github-oidc 
78+ 
79+       - name : Publish to MCP Registry 
80+         run : mcp-publisher publish 
Original file line number Diff line number Diff line change 11#  Build stage
22FROM  golang:1.24-bullseye AS builder
33
4- LABEL  io.modelcontextprotocol.server.name="grafana/mcp-grafana" 
4+ LABEL  io.modelcontextprotocol.server.name="io.github. grafana/mcp-grafana" 
55
66#  Set the working directory
77WORKDIR  /app
Original file line number Diff line number Diff line change 1+ {
2+   "$schema" : " https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json" 
3+   "name" : " io.github.grafana/mcp-grafana" 
4+   "description" : " An MCP server giving access to Grafana dashboards, data and more." 
5+   "repository" : {
6+     "url" : " https://github.com/grafana/mcp-grafana" 
7+     "source" : " github" 
8+   },
9+   "version" : " 0.6.5" 
10+   "packages" : [
11+     {
12+       "registryType" : " oci" 
13+       "registryBaseUrl" : " https://docker.io" 
14+       "identifier" : " grafana/mcp-grafana" 
15+       "version" : " 0.6.5" 
16+       "transport" : {
17+         "type" : " stdio" 
18+       },
19+       "environmentVariables" : [
20+         {
21+           "description" : " URL to your Grafana instance" 
22+           "isRequired" : true ,
23+           "format" : " string" 
24+           "isSecret" : false ,
25+           "name" : " GRAFANA_URL" 
26+         },
27+         {
28+           "description" : " Service account token used to authenticate with your Grafana instance" 
29+           "isRequired" : false ,
30+           "format" : " string" 
31+           "isSecret" : true ,
32+           "name" : " GRAFANA_SERVICE_ACCOUNT_TOKEN" 
33+         },
34+         {
35+           "description" : " Username to authenticate with your Grafana instance" 
36+           "isRequired" : false ,
37+           "format" : " string" 
38+           "isSecret" : false ,
39+           "name" : " GRAFANA_USERNAME" 
40+         },
41+         {
42+           "description" : " Password to authenticate with your Grafana instance" 
43+           "isRequired" : false ,
44+           "format" : " string" 
45+           "isSecret" : true ,
46+           "name" : " GRAFANA_PASSWORD" 
47+         }
48+       ]
49+     }
50+   ]
51+ }
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments