@@ -102,7 +102,14 @@ func runStdioServer(readOnly bool, logger *log.Logger, logCommands bool, exportT
102
102
logger .Fatal ("GITHUB_PERSONAL_ACCESS_TOKEN not set" )
103
103
}
104
104
ghClient := gogithub .NewClient (nil ).WithAuthToken (token )
105
- if host := viper .GetString ("gh-host" );host != "" {
105
+
106
+ // Check GH_HOST env var first, then fall back to viper config
107
+ host := os .Getenv ("GH_HOST" )
108
+ if host == "" {
109
+ host = viper .GetString ("gh-host" )
110
+ }
111
+
112
+ if host != "" {
106
113
parsedURL ,err := url .Parse (fmt .Sprintf ("https://api.%s/" ,host ))
107
114
if err != nil {
108
115
return fmt .Errorf ("failed to parse provided GitHub host URL: %w" ,err )
@@ -113,8 +120,10 @@ func runStdioServer(readOnly bool, logger *log.Logger, logCommands bool, exportT
113
120
return fmt .Errorf ("failed to parse provided GitHub host URL: %w" ,err )
114
121
}
115
122
116
- ghClient .BaseURL = parsedURL
117
- ghClient .UploadURL = uploadURL
123
+ ghClient ,err = ghClient .WithEnterpriseURLs (parsedURL .String (),uploadURL .String ())
124
+ if err != nil {
125
+ return fmt .Errorf ("failed to create GitHub client with host: %w" ,err )
126
+ }
118
127
}
119
128
120
129
t ,dumpTranslations := translations .TranslationHelper ()