golf-mcp 0.1.6__py3-none-any.whl → 0.1.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of golf-mcp might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: golf-mcp
3
- Version: 0.1.6
3
+ Version: 0.1.8
4
4
  Summary: Framework for building MCP servers
5
5
  Author-email: Antoni Gmitruk <antoni@golf.dev>
6
6
  License-Expression: Apache-2.0
@@ -177,6 +177,11 @@ The `golf.json` file is the heart of your Golf project configuration. Here's wha
177
177
  // - "sse": Server-Sent Events (recommended for web clients)
178
178
  // - "streamable-http": HTTP with streaming support
179
179
  // - "stdio": Standard I/O (for CLI integration)
180
+
181
+ // OpenTelemetry Configuration (optional)
182
+ "opentelemetry_enabled": false, // Enable distributed tracing
183
+ "opentelemetry_default_exporter": "console" // Default exporter if OTEL_TRACES_EXPORTER not set
184
+ // Options: "console", "otlp_http"
180
185
  }
181
186
  ```
182
187
 
@@ -188,12 +193,46 @@ The `golf.json` file is the heart of your Golf project configuration. Here's wha
188
193
  - `"streamable-http"` provides HTTP streaming for traditional API clients
189
194
  - `"stdio"` enables integration with command-line tools and scripts
190
195
  - **`host` & `port`**: Control where your server listens. Use `"127.0.0.1"` for local development or `"0.0.0.0"` to accept external connections.
196
+ - **`opentelemetry_enabled`**: When true, enables distributed tracing for debugging and monitoring your MCP server
197
+ - **`opentelemetry_default_exporter`**: Sets the default trace exporter. Can be overridden by the `OTEL_TRACES_EXPORTER` environment variable
198
+
199
+ ## Features
200
+
201
+ ### 🔍 OpenTelemetry Support
202
+
203
+ Golf includes built-in OpenTelemetry instrumentation for distributed tracing. When enabled, it automatically traces:
204
+ - Tool executions with arguments and results
205
+ - Resource reads and template expansions
206
+ - Prompt generations
207
+ - HTTP requests and sessions
208
+
209
+ #### Configuration
210
+
211
+ Enable OpenTelemetry in your `golf.json`:
212
+ ```json
213
+ {
214
+ "opentelemetry_enabled": true,
215
+ "opentelemetry_default_exporter": "otlp_http"
216
+ }
217
+ ```
218
+
219
+ Then configure via environment variables:
220
+ ```bash
221
+ # For OTLP HTTP exporter (e.g., Jaeger, Grafana Tempo)
222
+ OTEL_TRACES_EXPORTER=otlp_http
223
+ OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318/v1/traces
224
+ OTEL_SERVICE_NAME=my-golf-server # Optional, defaults to project name
225
+
226
+ # For console exporter (debugging)
227
+ OTEL_TRACES_EXPORTER=console
228
+ ```
229
+
230
+ **Note**: When using the OTLP HTTP exporter, you must set `OTEL_EXPORTER_OTLP_ENDPOINT`. If not configured, Golf will display a warning and disable tracing to avoid errors.
191
231
 
192
232
  ## Roadmap
193
233
 
194
234
  Here are the things we are working hard on:
195
235
 
196
- * **Native OpenTelemetry implementation for tracing**
197
236
  * **`golf deploy` command for one click deployments to Vercel, Blaxel and other providers**
198
237
  * **Production-ready OAuth token management, to allow for persistent, encrypted token storage and client mapping**
199
238
 
@@ -1,6 +1,6 @@
1
- golf/__init__.py,sha256=l1lWRV5fzx6-C3xpWdEYCx3Y5TNykf_HgoEs12q6cfQ,21
1
+ golf/__init__.py,sha256=1CUarGSwycOh0GKIcMutmmKE9j9E4B6-Jji1lJFY5Aw,21
2
2
  golf/auth/__init__.py,sha256=nh22WdganrEtp0YnxX1dmk6euuUFu8zh1BWxi1LGZnI,4107
3
- golf/auth/api_key.py,sha256=5UKmWZTs7sQ6bZ8baJjd-IITZNBwiExES0pVpq0-DEs,2049
3
+ golf/auth/api_key.py,sha256=TWJJ1tyVPSp1vN61opn3DdGKfQkTLX2w-YyLO4eeRPk,2495
4
4
  golf/auth/helpers.py,sha256=eKUIhdsaxa9bBtU6BaVZszTtS1ZV1v1fzvCkXV__9pM,2965
5
5
  golf/auth/oauth.py,sha256=MGtuKMSt77yihuZiuiEm33xAlXJynIMcFmMLZRlppdg,31525
6
6
  golf/auth/provider.py,sha256=-iIjw1XruxgpWTrwYBX9dbf_sLPlx5vZxZsM0E4Dp64,3931
@@ -11,26 +11,28 @@ golf/commands/build.py,sha256=yhcUrK9gHnXNuLPZ2brcmtMgR8wXMBlEBcaBgTKkanI,2295
11
11
  golf/commands/init.py,sha256=I-fe7PBDX0vfKCLGXMppD7Uo03LzRbx-bCM2Mt3UzdU,7155
12
12
  golf/commands/run.py,sha256=dLrjmpypfvInDkA-KgEUyKrTvkvp59yea5tUyxk_Ej4,1989
13
13
  golf/core/__init__.py,sha256=RDSMAkB5NDaV7W5OFJ--miqv6JmvM3rI9ashndqM3X4,52
14
- golf/core/builder.py,sha256=SXJ4f4zAPlVtzreq9sQd0fMPWlLy8WkAUdfPY-aqG78,52798
15
- golf/core/builder_auth.py,sha256=y7cVqwbOqvhBOU67xCwtV5L-85b1E_Q3Khu91ilpUpU,11800
16
- golf/core/builder_telemetry.py,sha256=6ip4peRcb-RVZ6djorKW_VW6IiTCbnzOJYQm_YOMvpc,10189
14
+ golf/core/builder.py,sha256=C7FUPiQ59EYx6807nRkZoFMyHCrIIqzrk39Da4fo_ew,48037
15
+ golf/core/builder_auth.py,sha256=ySu_nzoUgGYEP-8DCoSFwgoEW6NMFiQ_MP0v6akOEUI,17217
16
+ golf/core/builder_telemetry.py,sha256=v2LnlHRWg9JqgplfZkV3zm1Jpo8QQBr7hlY8NLhlu8o,2694
17
17
  golf/core/config.py,sha256=gZ3eE8VIvDgIrLTizNq9XqkgfMkRg8Pm06gSVV51arA,6806
18
18
  golf/core/parser.py,sha256=sCVMWO7sGkSaKkU9LiHC3O9CTcrZxUbxnjdtwP7ne_o,19251
19
- golf/core/telemetry.py,sha256=mjkr6VaHABiu1SLyaFG6T8EfdvWjyNZVWY6FEWp-WHU,7385
19
+ golf/core/telemetry.py,sha256=46eJ92zR3cY2DFQRWFMjIKTBHBRypEaSM-ddS1LUdus,9035
20
20
  golf/core/transformer.py,sha256=3mr4_K4l1HZl1WQWSt9NKEhB5oi3b7kJnniseYEfrcI,5573
21
21
  golf/examples/__init__.py,sha256=Nqnn8clbgv-5l0PgxcTOldg8mkMKrFn4TvPL-rYUUGg,1
22
- golf/examples/api_key/README.md,sha256=DIVcGwfs4FVXpk9R5gz1R-AvkzcLlNCZYEPTKlvWjCg,2235
23
- golf/examples/api_key/golf.json,sha256=iBSQWsazl6k7xdg1GhSJkzx4dANDjUp0WGFrI8M9Bug,180
24
- golf/examples/api_key/pre_build.py,sha256=N7q77CZwLnL8mgaPI6hXonjD-KX7RveaNMOHhzJ5EqY,407
22
+ golf/examples/api_key/.env,sha256=15dewTdeJEMAIuzQmh1SFc1zEN6PwryWgAc14IV02lY,90
23
+ golf/examples/api_key/.env.example,sha256=k_wpsqp0oRLLRw520NL3VrbJx4KDZclczYBW1YUgjvw,214
24
+ golf/examples/api_key/README.md,sha256=nuc4YIspX_eokoArylBv6rKPv5P8BTq__2YaInidrUk,2892
25
+ golf/examples/api_key/golf.json,sha256=_2ty1kOBZSyR2HMLU_-2CegFkE6U1jY-AiX4Bq664sQ,262
26
+ golf/examples/api_key/pre_build.py,sha256=JfevA986fodhgDv9JEXtgB9mn7SQEXbBaSoGGR9XyYY,469
25
27
  golf/examples/api_key/tools/issues/create.py,sha256=b58IadolStcuRxpRdTC_78Kfa4KCvMJSMvAlCouz-Y0,2832
26
28
  golf/examples/api_key/tools/issues/list.py,sha256=k2TGEgVCCTs0flHQFRqKQIA2zL39JTlTiUgAymW2gVg,2777
27
29
  golf/examples/api_key/tools/repos/list.py,sha256=4Z9ISphjhSZdJ3xqxmwbSo7UvkT368ZiSdyckOZqZnQ,3272
28
30
  golf/examples/api_key/tools/search/code.py,sha256=eXpJAmKq0am4oiCZm8vfz9d5NmyxjpnMPcEwrCf8vNo,3025
29
31
  golf/examples/api_key/tools/users/get.py,sha256=ifzqLxUr0dX00xscyjwuXCB3n48znu28DQU8MGUor50,2577
30
- golf/examples/basic/.env,sha256=CRh4u1yXPCbjjgUKUMUgw51aOBdVFEgY748z7WgfkVc,156
31
- golf/examples/basic/.env.example,sha256=gCTFcabTvr_-Rg3kTGmi63JQtCEOwMu4U5jTa1GM66U,123
32
+ golf/examples/basic/.env,sha256=CqdcvPXopWppurJ3bBjT2dODlKUrLv629BHnOy8zBkM,247
33
+ golf/examples/basic/.env.example,sha256=k_wpsqp0oRLLRw520NL3VrbJx4KDZclczYBW1YUgjvw,214
32
34
  golf/examples/basic/README.md,sha256=-mY3R6AAnkXT9FPkALDrJtdf9IyKDvuqjsrLAMTLRYI,2663
33
- golf/examples/basic/golf.json,sha256=IcorojR67GaOZRrOj_XB6gyRXha7Jrwyc8IHtJM13DU,132
35
+ golf/examples/basic/golf.json,sha256=9qi_J_Q0GD1BjrGKWIzFWkPOA84zBNnya-jJwbFZJ2o,214
34
36
  golf/examples/basic/pre_build.py,sha256=VVYtBSCy4Xjg1Ocpl8ZwEr7VCVqPSSkDEzrTfQkAQKY,1037
35
37
  golf/examples/basic/prompts/welcome.py,sha256=LgT1eQewe0J08I5WFBv4RrgDr6yn4a4ww6XQ8k3sTVk,822
36
38
  golf/examples/basic/resources/current_time.py,sha256=KG28G5tpFGtGH2T5DHFAc-CwbYsFzE115xmGMVpi7fs,1176
@@ -43,9 +45,11 @@ golf/examples/basic/tools/hello.py,sha256=wJjCYtWfRpTAcNKrlrRibm0UFKLnHFB1sGjR-q
43
45
  golf/examples/basic/tools/payments/charge.py,sha256=BxgHtVfZA3Z_QhT3OJisKyfGr3ZWBzd-jlgdwkvZaYM,1736
44
46
  golf/examples/basic/tools/payments/common.py,sha256=z5shSOZizUEnxBmGUSYghxmNwIvuhg-yfXKIfPWgV04,1292
45
47
  golf/examples/basic/tools/payments/refund.py,sha256=3auhKzuwPLgpoyUDz0p8lUWUY_fXNe0RYadQBxEvpB4,1603
46
- golf_mcp-0.1.6.dist-info/licenses/LICENSE,sha256=5_j2f6fTJmvfmUewzElhkpAaXg2grVoxKouOA8ihV6E,11348
47
- golf_mcp-0.1.6.dist-info/METADATA,sha256=8hibJN6yAw3457LxWZFwHSCIP95eTgQ2GfoWMO9GdRo,9442
48
- golf_mcp-0.1.6.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
49
- golf_mcp-0.1.6.dist-info/entry_points.txt,sha256=5y7rHYM8jGpU-nfwdknCm5XsApLulqsnA37MO6BUTYg,43
50
- golf_mcp-0.1.6.dist-info/top_level.txt,sha256=BQToHcBUufdyhp9ONGMIvPE40jMEtmI20lYaKb4hxOg,5
51
- golf_mcp-0.1.6.dist-info/RECORD,,
48
+ golf/telemetry/__init__.py,sha256=TFinunN7eFKEHMFUXjPBpz-JzuEu59QzrXwgg85YlQs,397
49
+ golf/telemetry/instrumentation.py,sha256=520owHHBHlm819XD4FJ2dXrGbmGAjOMBXRREJJRgt7o,22890
50
+ golf_mcp-0.1.8.dist-info/licenses/LICENSE,sha256=5_j2f6fTJmvfmUewzElhkpAaXg2grVoxKouOA8ihV6E,11348
51
+ golf_mcp-0.1.8.dist-info/METADATA,sha256=5c7Pi2JDpq1vU9sIV4PSlFCZ9KIy1zw-D8CsCs2-Pdg,10909
52
+ golf_mcp-0.1.8.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
53
+ golf_mcp-0.1.8.dist-info/entry_points.txt,sha256=5y7rHYM8jGpU-nfwdknCm5XsApLulqsnA37MO6BUTYg,43
54
+ golf_mcp-0.1.8.dist-info/top_level.txt,sha256=BQToHcBUufdyhp9ONGMIvPE40jMEtmI20lYaKb4hxOg,5
55
+ golf_mcp-0.1.8.dist-info/RECORD,,