Jeremiah Lowin commited on
Commit
94b1690
·
1 Parent(s): 8dcb38e

Add typing

Browse files
Files changed (1) hide show
  1. src/fastmcp/server/context.py +10 -7
src/fastmcp/server/context.py CHANGED
@@ -253,7 +253,9 @@ class Context:
253
 
254
  return fastmcp.server.dependencies.get_http_request()
255
 
256
- def _parse_model_preferences(self, model_preferences) -> ModelPreferences | None:
 
 
257
  """
258
  Validates and converts user input for model_preferences into a ModelPreferences object.
259
 
@@ -273,12 +275,12 @@ class Context:
273
  """
274
  if model_preferences is None:
275
  return None
276
- if isinstance(model_preferences, ModelPreferences):
277
  return model_preferences
278
- if isinstance(model_preferences, str):
279
  # Single model hint
280
  return ModelPreferences(hints=[ModelHint(name=model_preferences)])
281
- if isinstance(model_preferences, list):
282
  # List of model hints (strings)
283
  if not all(isinstance(h, str) for h in model_preferences):
284
  raise ValueError(
@@ -288,6 +290,7 @@ class Context:
288
  return ModelPreferences(
289
  hints=[ModelHint(name=h) for h in model_preferences]
290
  )
291
- raise ValueError(
292
- "model_preferences must be one of: ModelPreferences, str, list[str], or None."
293
- )
 
 
253
 
254
  return fastmcp.server.dependencies.get_http_request()
255
 
256
+ def _parse_model_preferences(
257
+ self, model_preferences: ModelPreferences | str | list[str] | None
258
+ ) -> ModelPreferences | None:
259
  """
260
  Validates and converts user input for model_preferences into a ModelPreferences object.
261
 
 
275
  """
276
  if model_preferences is None:
277
  return None
278
+ elif isinstance(model_preferences, ModelPreferences):
279
  return model_preferences
280
+ elif isinstance(model_preferences, str):
281
  # Single model hint
282
  return ModelPreferences(hints=[ModelHint(name=model_preferences)])
283
+ elif isinstance(model_preferences, list):
284
  # List of model hints (strings)
285
  if not all(isinstance(h, str) for h in model_preferences):
286
  raise ValueError(
 
290
  return ModelPreferences(
291
  hints=[ModelHint(name=h) for h in model_preferences]
292
  )
293
+ else:
294
+ raise ValueError(
295
+ "model_preferences must be one of: ModelPreferences, str, list[str], or None."
296
+ )