Repository Analysis

PrefectHQ/fastmcp

🚀 The fast, Pythonic way to build MCP servers and clients.

42.4 Strong AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of PrefectHQ/fastmcp, a Python project with 26,191 GitHub stars. SynthScan v2.0 examined 221,476 lines of code across 913 source files, recording 7034 pattern matches distributed across 24 syntactic categories. The overall adjusted score of 42.4 places this repository in the Strong AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

42.4
Adjusted Score
42.4
Raw Score
100%
Time Factor
2026-07-09
Last Push
26.2K
Stars
Python
Language
221.5K
Lines of Code
913
Files
7.0K
Pattern Hits
2026-07-14
Scan Date
0.21
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 2HIGH 189MEDIUM 723LOW 6120

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 7034 distinct pattern matches across 24 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers4875 hits · 4744 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/mcp_config.py54def infer_transport_type_from_url(CODE
LOWfastmcp_slim/fastmcp/mcp_config.py74def _coerce_tool_transform_configs(tools: dict[str, Any]) -> dict[str, Any]:CODE
LOWfastmcp_slim/fastmcp/mcp_config.py103 def _require_at_least_one_transform_field(CODE
LOWfastmcp_slim/fastmcp/mcp_config.py122 def _to_server_and_underlying_transport(CODE
LOW…tmcp_slim/fastmcp/experimental/transforms/code_mode.py566 def _build_execute_description(self) -> str:CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py606 def _create_forwarding_transform(CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py822 def _merge_schema_with_precedence(CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py996def apply_transformations_to_tools(CODE
LOWfastmcp_slim/fastmcp/tools/base.py59def resolve_serialize_by_alias(value: Any) -> bool:CODE
LOWfastmcp_slim/fastmcp/tools/base.py490def _convert_to_single_content_block(CODE
LOWfastmcp_slim/fastmcp/resources/types.py91 def set_binary_from_mime_type(cls, is_binary: bool, info: ValidationInfo) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py47def get_session_span_attributes() -> dict[str, str]:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py61def _get_parent_trace_context() -> Context | None:CODE
LOWfastmcp_slim/fastmcp/server/low_level.py40def client_supports_extension(session: ServerSession, extension_id: str) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/low_level.py267 def create_initialization_options(CODE
LOWfastmcp_slim/fastmcp/server/context.py109def _warn_sampling_deprecated() -> None:CODE
LOWfastmcp_slim/fastmcp/server/context.py633 def client_supports_extension(self, extension_id: str) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/context.py1552def _detached_request_context(context: Context) -> ServerRequestContext:CODE
LOWfastmcp_slim/fastmcp/server/context.py1585async def _log_to_server_and_client(CODE
LOWfastmcp_slim/fastmcp/server/http.py300 def _allow_same_origin_fallback(self, scope: Scope, host: str) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/http.py543def create_streamable_http_app(CODE
LOWfastmcp_slim/fastmcp/server/elicitation.py132def parse_elicit_response_type(CODE
LOWfastmcp_slim/fastmcp/server/elicitation.py387def validate_elicitation_json_schema(schema: dict[str, Any]) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py274def transform_context_annotations(fn: Callable[..., Any]) -> Callable[..., Any]:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py634def without_injected_parameters(CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py726async def _resolve_fastmcp_dependencies(CODE
LOWfastmcp_slim/fastmcp/server/middleware/dereference.py33 async def on_list_resource_templates(CODE
LOWfastmcp_slim/fastmcp/server/middleware/dereference.py58def _dereference_resource_template(template: ResourceTemplate) -> ResourceTemplate:CODE
LOWfastmcp_slim/fastmcp/server/middleware/authorization.py268 async def on_list_resource_templates(CODE
LOWfastmcp_slim/fastmcp/server/middleware/timing.py146 async def on_list_resource_templates(CODE
LOWfastmcp_slim/fastmcp/server/middleware/caching.py513 def _matches_tool_cache_settings(self, tool_name: str) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/middleware/caching.py572def _make_call_tool_cache_key(CODE
LOWfastmcp_slim/fastmcp/server/middleware/caching.py580def _make_read_resource_cache_key(CODE
LOWfastmcp_slim/fastmcp/server/middleware/caching.py588def _make_get_prompt_cache_key(CODE
LOWfastmcp_slim/fastmcp/server/middleware/middleware.py203 async def on_list_resource_templates(CODE
LOWfastmcp_slim/fastmcp/server/tasks/subscriptions.py31async def subscribe_to_task_updates(CODE
LOWfastmcp_slim/fastmcp/server/tasks/subscriptions.py93async def _send_status_notification(CODE
LOWfastmcp_slim/fastmcp/server/tasks/subscriptions.py163async def _send_progress_notification(CODE
LOWfastmcp_slim/fastmcp/server/tasks/keys.py137def get_client_task_id_from_key(task_key: str) -> str:CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py76async def notification_subscriber_loop(CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py250async def ensure_subscriber_running(CODE
LOWfastmcp_slim/fastmcp/server/mixins/mcp_operations.py58def _normalize_call_tool_result(CODE
LOWfastmcp_slim/fastmcp/server/mixins/mcp_operations.py167 async def _on_list_resource_templates(CODE
LOWfastmcp_slim/fastmcp/server/mixins/transport.py53def _resolve_allowed_hosts_for_run(CODE
LOWfastmcp_slim/fastmcp/server/mixins/transport.py182 def _get_additional_http_routes(self: FastMCP) -> list[BaseRoute]:CODE
LOWfastmcp_slim/fastmcp/server/mixins/lifespan.py265 def _setup_task_protocol_handlers(self: FastMCP) -> None:CODE
LOWfastmcp_slim/fastmcp/server/auth/cimd.py631 def _extract_public_key_from_jwks(self, token: str, jwks: dict) -> str:CODE
LOWfastmcp_slim/fastmcp/server/auth/oidc_proxy.py477 def _uses_alternate_verification(self) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py146def _matches_registered_loopback_redirect_uri(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py175def _matches_registered_redirect_uri(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py706 def _create_upstream_oauth_client(self) -> AsyncOAuth2Client:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1291 def _prepare_scopes_for_token_exchange(self, scopes: list[str]) -> list[str]:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1069 async def exchange_authorization_code(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1305 def _translate_scopes_from_idp(self, scopes: list[str]) -> list[str]:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1334 def _prepare_scopes_for_upstream_refresh(self, scopes: list[str]) -> list[str]:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1681 def _uses_alternate_verification(self) -> bool:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py64 def _validate_client_redirect_uri(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py236 def _set_consent_binding_cookie(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py253 def _clear_consent_binding_cookie(CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py264 def _verify_consent_binding_cookie(CODE
4815 more matches not shown…
Decorative Section Separators556 hits · 1864 pts
SeverityFileLineSnippetContext
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py25# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py27# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py39# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py41# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py72# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py74# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py201# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py203# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py488# ---------------------------------------------------------------------------COMMENT
MEDIUM…tmcp_slim/fastmcp/experimental/transforms/code_mode.py490# ---------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/server.py575 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/server.py577 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/server.py2259# -----------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/server.py2261# -----------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/context.py1441 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/context.py1443 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/tasks/notifications.py236# =============================================================================COMMENT
MEDIUMfastmcp_slim/fastmcp/server/tasks/notifications.py238# =============================================================================COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py21# -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py23# -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py37# -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py39# -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py635 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py637 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py661 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py663 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py702 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py704 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1287 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1289 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1952 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1954 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py745 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py747 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py764 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py766 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py893 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py895 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1016 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1018 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1666 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1668 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2136 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2138 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py186 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py188 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py238 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py240 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py260 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py262 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py284 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py286 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py306 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py308 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py318 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/aggregate.py320 # -------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py938# -----------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py940# -----------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py134# -----------------------------------------------------------------------------COMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py136# -----------------------------------------------------------------------------COMMENT
496 more matches not shown…
Unused Imports443 hits · 432 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/types.py21CODE
LOWfastmcp_slim/fastmcp/types.py25CODE
LOWfastmcp_slim/fastmcp/types.py28CODE
LOWfastmcp_slim/fastmcp/types.py31CODE
LOWfastmcp_slim/fastmcp/types.py34CODE
LOWfastmcp_slim/fastmcp/types.py37CODE
LOWfastmcp_slim/fastmcp/types.py40CODE
LOWfastmcp_slim/fastmcp/types.py43CODE
LOWfastmcp_slim/fastmcp/types.py46CODE
LOWfastmcp_slim/fastmcp/types.py49CODE
LOWfastmcp_slim/fastmcp/types.py52CODE
LOWfastmcp_slim/fastmcp/types.py55CODE
LOWfastmcp_slim/fastmcp/types.py58CODE
LOWfastmcp_slim/fastmcp/types.py61CODE
LOWfastmcp_slim/fastmcp/types.py64CODE
LOWfastmcp_slim/fastmcp/types.py67CODE
LOWfastmcp_slim/fastmcp/types.py70CODE
LOWfastmcp_slim/fastmcp/types.py73CODE
LOWfastmcp_slim/fastmcp/types.py76CODE
LOWfastmcp_slim/fastmcp/types.py79CODE
LOWfastmcp_slim/fastmcp/types.py82CODE
LOWfastmcp_slim/fastmcp/types.py85CODE
LOWfastmcp_slim/fastmcp/types.py88CODE
LOWfastmcp_slim/fastmcp/types.py91CODE
LOWfastmcp_slim/fastmcp/types.py94CODE
LOWfastmcp_slim/fastmcp/types.py97CODE
LOWfastmcp_slim/fastmcp/types.py100CODE
LOWfastmcp_slim/fastmcp/_sdk_patches.py50CODE
LOWfastmcp_slim/fastmcp/settings.py1CODE
LOWfastmcp_slim/fastmcp/mcp_config.py25CODE
LOWfastmcp_slim/fastmcp/_compat.py30CODE
LOWfastmcp_slim/fastmcp/dependencies.py11CODE
LOWfastmcp_slim/fastmcp/dependencies.py11CODE
LOWfastmcp_slim/fastmcp/dependencies.py11CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/dependencies.py13CODE
LOWfastmcp_slim/fastmcp/decorators.py3CODE
LOW…lim/fastmcp/experimental/sampling/handlers/__init__.py3CODE
LOW…_slim/fastmcp/experimental/sampling/handlers/openai.py3CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py3CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py3CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py4CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py4CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py5CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py5CODE
LOWfastmcp_slim/fastmcp/tools/function_parsing.py3CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py3CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py3CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py4CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py4CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py4CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py5CODE
383 more matches not shown…
Cross-File Repetition84 hits · 420 pts
SeverityFileLineSnippetContext
HIGHfastmcp_slim/fastmcp/tools/base.py0schedule this prompt for background execution via docket. args: docket: the docket instance arguments: prompt arguments STRING
HIGHfastmcp_slim/fastmcp/resources/template.py0schedule this prompt for background execution via docket. args: docket: the docket instance arguments: prompt arguments STRING
HIGHfastmcp_slim/fastmcp/resources/base.py0schedule this prompt for background execution via docket. args: docket: the docket instance arguments: prompt arguments STRING
HIGHfastmcp_slim/fastmcp/prompts/base.py0schedule this prompt for background execution via docket. args: docket: the docket instance arguments: prompt arguments STRING
HIGHfastmcp_slim/fastmcp/server/auth/auth.py0verify a bearer token and return access info if valid. this method implements the tokenverifier protocol by delegating tSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/in_memory.py0verify a bearer token and return access info if valid. this method implements the tokenverifier protocol by delegating tSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/jwt.py0verify a bearer token and return access info if valid. this method implements the tokenverifier protocol by delegating tSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/supabase.py0get oauth routes including authkit authorization server metadata forwarding. this returns the standard protected resourcSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/descope.py0get oauth routes including authkit authorization server metadata forwarding. this returns the standard protected resourcSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/scalekit.py0get oauth routes including authkit authorization server metadata forwarding. this returns the standard protected resourcSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/workos.py0get oauth routes including authkit authorization server metadata forwarding. this returns the standard protected resourcSTRING
HIGHfastmcp_slim/fastmcp/cli/install/claude_desktop.py0install fastmcp server in cursor. args: file: path to the server file server_object: optional server object name (for :oSTRING
HIGHfastmcp_slim/fastmcp/cli/install/gemini_cli.py0install fastmcp server in cursor. args: file: path to the server file server_object: optional server object name (for :oSTRING
HIGHfastmcp_slim/fastmcp/cli/install/claude_code.py0install fastmcp server in cursor. args: file: path to the server file server_object: optional server object name (for :oSTRING
HIGHfastmcp_slim/fastmcp/cli/install/cursor.py0install fastmcp server in cursor. args: file: path to the server file server_object: optional server object name (for :oSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/tools.py0retrieve all resource templates available on the server. this method automatically fetches all pages if the server paginSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/prompts.py0retrieve all resource templates available on the server. this method automatically fetches all pages if the server paginSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/resources.py0retrieve all resource templates available on the server. this method automatically fetches all pages if the server paginSTRING
HIGHtests/tools/test_standalone_decorator.py0decorated function should still be directly callable.STRING
HIGHtests/resources/test_standalone_decorator.py0decorated function should still be directly callable.STRING
HIGHtests/prompts/test_standalone_decorator.py0decorated function should still be directly callable.STRING
HIGHtests/tools/tool/test_callable.py0test that callable objects with sync __call__ work.STRING
HIGHtests/resources/test_function_resources.py0test that callable objects with sync __call__ work.STRING
HIGHtests/prompts/test_prompt.py0test that callable objects with sync __call__ work.STRING
HIGHtests/tools/tool/test_callable.py0test that callable objects with async __call__ work.STRING
HIGHtests/resources/test_function_resources.py0test that callable objects with async __call__ work.STRING
HIGHtests/prompts/test_prompt.py0test that callable objects with async __call__ work.STRING
HIGHtests/server/auth/test_oidc_proxy.py0create a valid oci oidc configuration dict for testing.STRING
HIGHtests/server/auth/test_oidc_proxy_token.py0create a valid oci oidc configuration dict for testing.STRING
HIGHtests/server/auth/providers/test_auth0.py0create a valid oci oidc configuration dict for testing.STRING
HIGHtests/server/auth/providers/test_oci.py0create a valid oci oidc configuration dict for testing.STRING
HIGHtests/server/auth/providers/test_github.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_workos.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_discord.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_clerk.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_azure_scopes.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_azure.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_google.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_huggingface.py0provide a memorystore for tests to avoid sqlite initialization on windows.STRING
HIGHtests/server/auth/providers/test_workos.py0test that oauth endpoints are configured correctly.STRING
HIGHtests/server/auth/providers/test_discord.py0test that oauth endpoints are configured correctly.STRING
HIGHtests/server/auth/providers/test_azure.py0test that oauth endpoints are configured correctly.STRING
HIGHtests/server/auth/providers/test_google.py0test that oauth endpoints are configured correctly.STRING
HIGHtests/server/auth/providers/test_workos.py0client with headless oauth that bypasses browser interaction.STRING
HIGHtests/server/auth/providers/test_supabase.py0client with headless oauth that bypasses browser interaction.STRING
HIGHtests/server/auth/providers/test_descope.py0client with headless oauth that bypasses browser interaction.STRING
HIGHtests/server/auth/providers/test_scalekit.py0client with headless oauth that bypasses browser interaction.STRING
HIGHtests/client/auth/test_oauth_client.py0client with headless oauth that bypasses browser interaction.STRING
HIGHtests/server/auth/providers/test_supabase.py0test that environment variables are loaded correctly.STRING
HIGHtests/server/auth/providers/test_descope.py0test that environment variables are loaded correctly.STRING
HIGHtests/server/auth/providers/test_scalekit.py0test that environment variables are loaded correctly.STRING
HIGH…/server/providers/local_provider_tools/test_enabled.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…r/providers/local_provider_tools/test_output_schema.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…ders/local_provider_tools/test_local_provider_tools.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…sts/server/providers/local_provider_tools/test_tags.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…rver/providers/local_provider_tools/test_parameters.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…/server/providers/local_provider_tools/test_context.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…erver/providers/local_provider_tools/test_decorator.py0normalize the order of items in anyof arrays for consistent comparison.STRING
HIGH…erver/providers/openapi/test_performance_comparison.py0helper to create a fastmcp server with openapiprovider.STRING
HIGHtests/server/providers/openapi/test_deepobject_style.py0helper to create a fastmcp server with openapiprovider.STRING
24 more matches not shown…
Self-Referential Comments126 hits · 379 pts
SeverityFileLineSnippetContext
MEDIUMfastmcp_slim/fastmcp/server/server.py2300 # Create a proxy to a remote serverSTRING
MEDIUMfastmcp_slim/fastmcp/server/server.py2303 # Create a proxy to another FastMCP serverSTRING
MEDIUMfastmcp_slim/fastmcp/server/http.py593 # Create the ASGI app wrapper (session manager is set each lifespan cycle)COMMENT
MEDIUMfastmcp_slim/fastmcp/server/http.py662 # Create a lifespan manager to start and stop the session managerCOMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py841 # Create a ProxyDCRClient with configured redirect URI validationCOMMENT
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py587 # Create a proxy provider for a remote serverSTRING
MEDIUMfastmcp_slim/fastmcp/server/providers/proxy.py880 # Create a proxy server using create_proxy (recommended)STRING
MEDIUM…tmcp/server/providers/local_provider/local_provider.py11# Create a reusable provider with toolsSTRING
MEDIUM…slim/fastmcp/server/providers/skills/skill_provider.py131 # Create a SkillFileResource that can read the fileCOMMENT
MEDIUMfastmcp_slim/fastmcp/cli/install/__init__.py13# Create a cyclopts app for install subcommandsCOMMENT
MEDIUMfastmcp_slim/fastmcp/cli/install/cursor.py35 # Create the configuration structure expected by CursorCOMMENT
MEDIUMfastmcp_slim/fastmcp/cli/install/cursor.py128 # Create the config file if it doesn't existCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/logging.py66 # Create a standard StreamHandler for stderrCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/json_schema_type.py519 # Create a copy of the schema for each type, but keep all constraintsCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/types.py211 # Create a copy of annotations without the excluded parametersCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/json_schema.py325 # Create a new schema by copying the referenced definitionCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/cli.py207 # Create the logo textCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/cli.py211 # Create the main titleCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/cli.py214 # Create the information tableCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/openapi/schemas.py161 # Create a new schema that allows null in addition to the original typeCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/openapi/schemas.py575 # Create a wrapped schema that contains the original schema under a "result" keyCOMMENT
MEDIUMfastmcp_slim/fastmcp/utilities/openapi/director.py209 # Create a mapping from parameter names to their locationsCOMMENT
MEDIUMfastmcp_slim/fastmcp/client/client.py669 # Create a fresh session kwargs dict so the clone doesn't shareCOMMENT
MEDIUMfastmcp_slim/fastmcp/client/client.py648 # Create a fresh client for each concurrent operationSTRING
MEDIUMfastmcp_slim/fastmcp/client/auth/oauth.py281 # Create the full static client info directly which will avoid DCR.COMMENT
MEDIUMfastmcp_slim/fastmcp/client/transports/config.py48 # Create a config with multiple serversSTRING
MEDIUMfastmcp_slim/fastmcp/client/transports/config.py62 # Create a client with the configSTRING
MEDIUMtests/test_mcp_config.py954 # Create a config with multiple serversCOMMENT
MEDIUMtests/tools/test_tool_future_annotations.py47 # Create a simple 1x1 white pixel PNGCOMMENT
MEDIUMtests/tools/test_tool_future_annotations.py141 # Define a tool with modern union syntaxCOMMENT
MEDIUMtests/server/test_auth_integration.py116 # Create a RefreshToken object that matches what is expected in later codeCOMMENT
MEDIUMtests/server/test_auth_integration.py830 # Create a test client with the tokenCOMMENT
MEDIUMtests/server/test_auth_integration_errors.py115 # Create a RefreshToken object that matches what is expected in later codeCOMMENT
MEDIUMtests/server/test_server.py168 # Create a server with resourcesCOMMENT
MEDIUMtests/server/test_server.py183 # Create a main server and mount the resource serverCOMMENT
MEDIUMtests/server/test_event_store.py269 # Create a realistic JSON-RPC request wrapped in JSONRPCMessageCOMMENT
MEDIUMtests/server/middleware/test_timing.py287 # Create a custom logger that writes to a string bufferCOMMENT
MEDIUMtests/server/tasks/test_task_methods.py81 # Create a task that won't complete until signaledCOMMENT
MEDIUMtests/server/auth/test_oauth_consent_page.py146 # Create a transaction manuallyCOMMENT
MEDIUMtests/server/auth/test_oauth_consent_page.py208 # Create a transactionCOMMENT
MEDIUMtests/server/auth/test_oauth_consent_page.py274 # Create a transactionCOMMENT
MEDIUMtests/server/auth/test_auth_provider.py41 # Create a static token verifier with a test tokenCOMMENT
MEDIUMtests/server/auth/test_oauth_consent_flow.py213 # Create a test app with OAuth routesCOMMENT
MEDIUMtests/server/auth/test_oauth_consent_flow.py673 # Create a tampered cookie (invalid signature)COMMENT
MEDIUMtests/server/auth/test_jwt_provider.py451 # Create a token with a different secretCOMMENT
MEDIUMtests/server/auth/test_jwt_provider_bearer.py400 # Create a token with a different key pairCOMMENT
MEDIUMtests/server/auth/test_ssrf_protection.py335 # Create a dummy token to trigger JWKS fetchCOMMENT
MEDIUMtests/server/auth/test_enhanced_error_responses.py292 # Create a valid token with wrong scopesCOMMENT
MEDIUMtests/server/auth/oauth_proxy/test_ui.py67 # Create a minimal OAuth proxyCOMMENT
MEDIUMtests/server/auth/oauth_proxy/test_tokens.py305 # Create a mock 401 response like the SDK returns for auth failuresCOMMENT
MEDIUMtests/server/auth/oauth_proxy/test_tokens.py350 # Create a mock 400 response like the SDK returns for invalid_grantCOMMENT
MEDIUMtests/server/providers/test_skills_provider.py649 # Create a file outside the skill directoryCOMMENT
MEDIUMtests/server/providers/test_skills_provider.py276 # Create a simple skillCOMMENT
MEDIUMtests/server/providers/test_skills_provider.py291 # Create a skill with supporting filesCOMMENT
MEDIUMtests/server/providers/proxy/test_proxy_client.py408 # Create a disconnected client (should use fresh sessions per request)COMMENT
MEDIUM…s/server/providers/openapi/test_openapi_performance.py75 # Create a medium-sized synthetic schemaCOMMENT
MEDIUMtests/server/providers/openapi/test_comprehensive.py477 # Create a mock client that tracks requestsCOMMENT
MEDIUMtests/server/http/test_custom_routes.py40 # Create the app by calling the constructor function directlyCOMMENT
MEDIUMtests/server/http/test_custom_routes.py56 # Create the app by calling the constructor function directlyCOMMENT
MEDIUMtests/server/http/test_stale_access_token.py73 # Create a mock request with fresh token in scopeCOMMENT
66 more matches not shown…
Docstring Block Structure62 hits · 310 pts
SeverityFileLineSnippetContext
HIGHfastmcp_slim/fastmcp/tools/tool_transform.py49Forward to parent tool with argument transformation applied. This function can only be called from within a transfoSTRING
HIGHfastmcp_slim/fastmcp/tools/tool_transform.py79Forward directly to parent tool without transformation. This function bypasses all argument transformation and valiSTRING
HIGHfastmcp_slim/fastmcp/tools/tool_transform.py393Create a transformed tool from a parent tool. Args: tool: The parent tool to transform. STRING
HIGHfastmcp_slim/fastmcp/server/server.py1188Call a tool by name. This is the public API for executing tools. By default, middleware is applied. ArSTRING
HIGHfastmcp_slim/fastmcp/server/server.py1369Read a resource by URI. This is the public API for reading resources. By default, middleware is applied. STRING
HIGHfastmcp_slim/fastmcp/server/server.py1553Render a prompt by name. This is the public API for rendering prompts. By default, middleware is applied. STRING
HIGHfastmcp_slim/fastmcp/server/context.py1337Send an elicitation request from a background task (SEP-1686). This method handles elicitation when running in STRING
HIGHfastmcp_slim/fastmcp/server/dependencies.py1452Get a specific claim from the access token. This dependency extracts a single claim value from the current access tSTRING
HIGHfastmcp_slim/fastmcp/server/lifespan.py91Compose with another lifespan using the | operator. Args: other: Another Lifespan instance. STRING
HIGHfastmcp_slim/fastmcp/server/tasks/keys.py47Build Docket task key with embedded metadata. When ``task_scope`` is ``None`` the task is anonymous and lives in thSTRING
HIGHfastmcp_slim/fastmcp/server/tasks/keys.py81Parse Docket task key to extract metadata. Args: task_key: Encoded task key from Docket Returns: STRING
HIGHfastmcp_slim/fastmcp/server/tasks/keys.py138Extract just the client task ID from a task key. Args: task_key: Full encoded task key Returns: STRING
HIGHfastmcp_slim/fastmcp/server/tasks/routing.py32Check task mode and submit to background if requested. Args: component: The MCP component task_typeSTRING
HIGHfastmcp_slim/fastmcp/server/tasks/elicitation.py54Send an elicitation request from a background task. This function handles the complexity of eliciting user input whSTRING
HIGHfastmcp_slim/fastmcp/server/tasks/requests.py91Look up task execution and metadata from Redis. Consolidates the common pattern of fetching task metadata from RediSTRING
HIGHfastmcp_slim/fastmcp/server/auth/ssrf.py145Resolve hostname to IP addresses using DNS. Args: hostname: Hostname to resolve port: Port number (STRING
HIGHfastmcp_slim/fastmcp/server/auth/ssrf.py194Validate URL for SSRF and resolve to IPs. Args: url: URL to validate require_path: If True, requireSTRING
HIGHfastmcp_slim/fastmcp/server/auth/ssrf.py250Fetch URL with comprehensive SSRF protection and DNS pinning. Security measures: 1. HTTPS only 2. DNS resolSTRING
HIGHfastmcp_slim/fastmcp/server/auth/cimd.py300Fetch and validate a CIMD document with SSRF protection. Uses ssrf_safe_fetch_response for the HTTP layer, whicSTRING
HIGHfastmcp_slim/fastmcp/server/auth/cimd.py512Validate JWT assertion from client. Args: assertion: The JWT assertion string client_idSTRING
HIGHfastmcp_slim/fastmcp/server/auth/cimd.py632Extract public key from inline JWKS. Args: token: JWT token to extract kid from jwks: JSTRING
HIGHfastmcp_slim/fastmcp/server/auth/cimd.py781Validate JWT assertion for private_key_jwt auth. Args: assertion: JWT assertion string from client STRING
HIGHfastmcp_slim/fastmcp/server/auth/jwt_issuer.py223Verify and decode a FastMCP token. Validates JWT signature, expiration, issuer, audience, and token type. STRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/azure.py629Get a cached or new OnBehalfOfCredential for OBO token exchange. Credentials are cached by user assertion so thSTRING
HIGHfastmcp_slim/fastmcp/server/auth/providers/azure.py862Exchange the user's Entra token for a downstream API token via OBO. This dependency performs a Microsoft Entra On-BSTRING
HIGH…_slim/fastmcp/server/providers/filesystem_discovery.py143Import a Python file as a module. If the file is part of a package (directory has __init__.py), imports it as aSTRING
HIGHfastmcp_slim/fastmcp/server/sampling/run.py144Determine whether to use fallback handler or client for sampling. Args: context: The MCP context. nSTRING
HIGHfastmcp_slim/fastmcp/server/sampling/sampling_tool.py92Create a SamplingTool from a function. The function's signature is analyzed to generate a JSON schema for STRING
HIGHfastmcp_slim/fastmcp/utilities/auth.py11Decode a JWT part (header or payload) without signature verification. Args: token: JWT token string (headerSTRING
HIGHfastmcp_slim/fastmcp/utilities/auth.py33Decode JWT header without signature verification. Useful for extracting the key ID (kid) for JWKS lookup. ArgsSTRING
HIGHfastmcp_slim/fastmcp/utilities/auth.py50Decode JWT payload without signature verification. Use only for tokens received directly from trusted sources (e.g.STRING
HIGHfastmcp_slim/fastmcp/utilities/skills.py88Get the manifest for a specific skill. Args: client: Connected FastMCP client skill_name: Name of tSTRING
HIGHfastmcp_slim/fastmcp/utilities/skills.py134Download a skill and all its files to a local directory. Creates a subdirectory named after the skill containing alSTRING
HIGHfastmcp_slim/fastmcp/utilities/json_schema_type.py168Convert JSON schema to appropriate Python type with validation. Args: schema: A JSON Schema dictionary defiSTRING
HIGHfastmcp_slim/fastmcp/utilities/pagination.py55Paginate a sequence of items. Args: items: The full sequence to paginate. cursor: Optional cursor fSTRING
HIGHfastmcp_slim/fastmcp/utilities/openapi/parser.py592 Extract only the schema definitions needed for input (parameters and request body). Args: STRING
HIGHfastmcp_slim/fastmcp/utilities/openapi/schemas.py79 Replace openapi $ref with jsonschema $defs recursively. Examples: - {"type": "object", "properties": {"$reSTRING
HIGH…cp/utilities/mcp_server_config/v1/mcp_server_config.py224Load configuration from a JSON file. Args: file_path: Path to the configuration file ReturSTRING
HIGHfastmcp_slim/fastmcp/apps/file_upload.py233Read a file's contents by name. Args: name: The filename to read. ctx: The current requSTRING
HIGHfastmcp_slim/fastmcp/client/tasks.py214Wait for task to reach a specific state or complete. Uses event-based waiting when notifications are available STRING
HIGHfastmcp_slim/fastmcp/client/client.py762Send an initialize request to the server. This method performs the MCP initialization handshake with the serverSTRING
HIGHfastmcp_slim/fastmcp/client/client.py993Await a coroutine while monitoring the session task for errors. When using HTTP transports, server errors (4xx/STRING
HIGHfastmcp_slim/fastmcp/client/client.py1245Send a completion request and return the complete MCP protocol result. Args: ref (mcp_types.ResourcSTRING
HIGHfastmcp_slim/fastmcp/client/client.py1276Send a completion request to the server. Args: ref (mcp_types.ResourceTemplateReference | mcp_typesSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/tools.py47Send a tools/list request and return the complete MCP protocol result. Args: cursor: Optional paginSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/tools.py101Retrieve all tools available on the server. This method automatically fetches all pages if the server paginatesSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/tools.py154Send a tools/call request and return the complete MCP protocol result. This method returns the raw CallToolResuSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/tools.py301Call a tool on the server. Unlike call_tool_mcp, this method raises a ToolError if the tool call results in an STRING
HIGHfastmcp_slim/fastmcp/client/mixins/prompts.py43Send a prompts/list request and return the complete MCP protocol result. Args: cursor: Optional pagSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/prompts.py85Retrieve all prompts available on the server. This method automatically fetches all pages if the server paginatSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/prompts.py135Send a prompts/get request and return the complete MCP protocol result. Args: name (str): The name STRING
HIGHfastmcp_slim/fastmcp/client/mixins/prompts.py230Retrieve a rendered prompt message list from the server. Args: name (str): The name of the prompt tSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/task_management.py53Query the status of a background task. Sends a 'tasks/get' MCP protocol request over the existing transport. STRING
HIGHfastmcp_slim/fastmcp/client/mixins/task_management.py76Retrieve the raw result of a completed background task. Sends a 'tasks/result' MCP protocol request over the exSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/task_management.py111List background tasks. Sends a 'tasks/list' MCP protocol request to the server. If the server returns aSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/task_management.py157Cancel a task, transitioning it to cancelled state. Sends a 'tasks/cancel' MCP protocol request. Task will haltSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/resources.py42Send a resources/list request and return the complete MCP protocol result. Args: cursor: Optional pSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/resources.py84Retrieve all resources available on the server. This method automatically fetches all pages if the server paginSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/resources.py133Send a resources/listResourceTemplates request and return the complete MCP protocol result. Args: cSTRING
HIGHfastmcp_slim/fastmcp/client/mixins/resources.py178Retrieve all resource templates available on the server. This method automatically fetches all pages if the serSTRING
2 more matches not shown…
Cross-Language Confusion40 hits · 222 pts
SeverityFileLineSnippetContext
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py764 if (d && typeof d === "object") return d.msg || d.message || JSON.stringify(d);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py764 if (d && typeof d === "object") return d.msg || d.message || JSON.stringify(d);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py765 return d || b.params.level || "";CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py769 if (b.error) return "error: " + (b.error.message || JSON.stringify(b.error));CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py770 if (b.result && typeof b.result === "object") {CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py776 if (first && first.text) {CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py353 const transport = new PostMessageTransport(iframe.contentWindow, null);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py623 if (activeFilters[allFilterKeys[i]]) on.push(allFilterKeys[i]);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py635 var qs = params.toString();CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py637 history.replaceState(null, "", url);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py706 if (fp !== null) {CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py745 if (lv && levelOrder.indexOf(lv) < minLevel) return false;CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py795 && (entry.body.error || (entry.body.result && entry.body.result.isError));CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py824 if (entry.direction === "notification" && entry.body && entry.body.params) {CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py846 navigator.clipboard.writeText(JSON.stringify(entry.body, null, 2));CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py866 detail.textContent = JSON.stringify(entry.body, null, 2);CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py886 var atBottom = !panelVisible || entries.scrollHeight - entries.scrollTop - entries.clientHeight < 40;CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py893 if (atBottom || (firstPoll && panelVisible)) entries.scrollTop = entries.scrollHeight;CODE
HIGHfastmcp_slim/fastmcp/cli/apps_dev.py905 if (!data || typeof data !== "object") return;CODE
HIGHfastmcp_slim/fastmcp/utilities/json_schema_type.py497 # Check if one of the types is None (null)COMMENT
HIGHfastmcp_slim/fastmcp/utilities/json_schema_type.py6- Basic types (string, number, integer, boolean, null)STRING
HIGHfastmcp_slim/fastmcp/utilities/openapi/schemas.py157 # If it's already nullable (type includes null), don't modifyCOMMENT
HIGHfastmcp_slim/fastmcp/apps/file_upload.py313 with If(STATE.stored.length()):CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py315 STATE.stored.length(),CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py334 with If(STATE.pending.length()), Column(gap=2):CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py365 with If(STATE.stored.length()):CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py390 with If(STATE.stored.length()):CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py392 f"{STATE.stored.length()}"CODE
HIGHfastmcp_slim/fastmcp/apps/file_upload.py393 f" {STATE.stored.length().pluralize('file')}"CODE
HIGHtests/tools/tool/test_content.py58 ([None], "[null]"),CODE
HIGHtests/tools/tool/test_content.py59 ([None, None], "[null,null]"),CODE
HIGHtests/tools/tool/test_content.py78 ([1, "two", None, {"c": 3}, False], '[1,"two",null,{"c":3},false]'),CODE
HIGHtests/server/middleware/test_logging.py144 "payload": '{"method":"tools/call","params":{"_meta":null,"inputResponses":null,"requestState":null,CODE
HIGHtests/server/middleware/test_logging.py299 '{"event": "request_start", "method": "test_method", "source": "client", "payload": "{\\"method\\":\\"reCODE
HIGHtests/server/middleware/test_logging.py327 '{"event": "request_start", "method": "test_method", "source": "client", "payload": "{\\"name\\":\\"tmplCODE
HIGHtests/server/middleware/test_logging.py359 '{"event": "request_start", "method": "test_method", "source": "client", "payload": "{\\"method\\":\\"toCODE
HIGHtests/server/middleware/test_logging.py534 'event=request_start method=tools/call source=client payload={"_meta":null,"inputResponses":null,"requesCODE
HIGHtests/server/middleware/test_logging.py557 '{"event": "request_start", "method": "tools/call", "source": "client", "payload": "{\\"_meta\\":null,\\CODE
HIGHtests/server/middleware/test_logging.py650event=request_start method=tools/call source=client payload={"_meta":null,"inputResponses":null,"requestState":null,"namCODE
HIGHtests/utilities/openapi/test_nullable_fields.py440 """Test that nullable enum validates null, enum values, and rejects invalid values."""STRING
Excessive Try-Catch Wrapping189 hits · 199 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/tools/tool_transform.py368 except Exception:CODE
LOWfastmcp_slim/fastmcp/tools/function_parsing.py258 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py104 except Exception:CODE
LOWfastmcp_slim/fastmcp/resources/types.py109 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/resources/types.py172 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/resources/types.py187 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/server.py1323 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/server.py1461 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/server.py1505 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/server.py1628 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py141 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py194 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py209 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py238 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/context.py1405 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/http.py700 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py304 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py623 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py707 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py778 except Exception as error:CODE
LOWfastmcp_slim/fastmcp/server/middleware/logging.py41 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/middleware/logging.py141 except Exception as e:CODE
LOW…stmcp_slim/fastmcp/server/middleware/error_handling.py77 except Exception as callback_error:CODE
LOW…stmcp_slim/fastmcp/server/middleware/error_handling.py113 except Exception as error:CODE
LOW…stmcp_slim/fastmcp/server/middleware/error_handling.py198 except Exception as error:CODE
LOWfastmcp_slim/fastmcp/server/middleware/timing.py51 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/middleware/timing.py103 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/subscriptions.py89 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/handlers.py248 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/context.py271 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py161 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py176 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py210 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py226 except Exception as cleanup_error:CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py274 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py132 except Exception as send_error:CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py158 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/tasks/requests.py196 except Exception as error:CODE
LOWfastmcp_slim/fastmcp/server/tasks/requests.py284 except Exception as error:CODE
LOWfastmcp_slim/fastmcp/server/mixins/lifespan.py113 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/auth.py603 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/cimd.py395 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oidc_proxy.py134 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oidc_proxy.py173 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1948 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py792 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1436 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1475 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1890 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1907 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1995 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2321 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2374 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py121 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py149 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py201 except Exception:CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/supabase.py163 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py203 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py235 except Exception as e:CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/azure.py624 except Exception as e:CODE
129 more matches not shown…
Deep Nesting182 hits · 164 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/tools/tool_transform.py272CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py379CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py606CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py822CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py707CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py371CODE
LOWfastmcp_slim/fastmcp/tools/base.py106CODE
LOWfastmcp_slim/fastmcp/resources/template.py80CODE
LOWfastmcp_slim/fastmcp/resources/template.py461CODE
LOWfastmcp_slim/fastmcp/server/server.py630CODE
LOWfastmcp_slim/fastmcp/server/server.py710CODE
LOWfastmcp_slim/fastmcp/server/server.py764CODE
LOWfastmcp_slim/fastmcp/server/server.py849CODE
LOWfastmcp_slim/fastmcp/server/server.py899CODE
LOWfastmcp_slim/fastmcp/server/server.py981CODE
LOWfastmcp_slim/fastmcp/server/server.py1035CODE
LOWfastmcp_slim/fastmcp/server/server.py1107CODE
LOWfastmcp_slim/fastmcp/server/server.py1179CODE
LOWfastmcp_slim/fastmcp/server/server.py1361CODE
LOWfastmcp_slim/fastmcp/server/elicitation.py132CODE
LOWfastmcp_slim/fastmcp/server/elicitation.py387CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py274CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py562CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py726CODE
LOWfastmcp_slim/fastmcp/server/middleware/dereference.py67CODE
LOW…stmcp_slim/fastmcp/server/middleware/error_handling.py80CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py76CODE
LOWfastmcp_slim/fastmcp/server/tasks/requests.py219CODE
LOWfastmcp_slim/fastmcp/server/mixins/lifespan.py91CODE
LOWfastmcp_slim/fastmcp/server/auth/ssrf.py285CODE
LOWfastmcp_slim/fastmcp/server/auth/cimd.py224CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/models.py221CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py769CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1791CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2002CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py2140CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py322CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/consent.py469CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py94CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/jwt.py331CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/jwt.py417CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/jwt.py434CODE
LOWfastmcp_slim/fastmcp/server/auth/handlers/authorize.py196CODE
LOWfastmcp_slim/fastmcp/server/providers/aggregate.py118CODE
LOWfastmcp_slim/fastmcp/server/providers/aggregate.py156CODE
LOWfastmcp_slim/fastmcp/server/providers/proxy.py289CODE
LOWfastmcp_slim/fastmcp/server/providers/filesystem.py149CODE
LOW…_slim/fastmcp/server/providers/filesystem_discovery.py140CODE
LOW…_slim/fastmcp/server/providers/filesystem_discovery.py285CODE
LOW…tmcp/server/providers/local_provider/local_provider.py113CODE
LOW…tmcp/server/providers/local_provider/local_provider.py178CODE
LOW…cp/server/providers/local_provider/decorators/tools.py122CODE
LOW…tmcp_slim/fastmcp/server/providers/openapi/provider.py71CODE
LOW…stmcp_slim/fastmcp/server/providers/openapi/routing.py86CODE
LOW…cp_slim/fastmcp/server/providers/openapi/components.py166CODE
LOW…slim/fastmcp/server/providers/skills/skill_provider.py229CODE
LOW…slim/fastmcp/server/providers/skills/skill_provider.py332CODE
LOWfastmcp_slim/fastmcp/server/sampling/run.py118CODE
LOWfastmcp_slim/fastmcp/server/sampling/run.py141CODE
LOWfastmcp_slim/fastmcp/server/sampling/run.py412CODE
122 more matches not shown…
Redundant / Tautological Comments84 hits · 128 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/mcp_config.py308 # Check if any values look like server configsCOMMENT
LOWfastmcp_slim/fastmcp/tools/tool_transform.py293 # Check if this parameter has a default_factory from transform_argsCOMMENT
LOWfastmcp_slim/fastmcp/tools/tool_transform.py492 # Check if function returns ToolResult (or subclass) - if so, don't fall back to parent.COMMENT
LOWfastmcp_slim/fastmcp/tools/tool_transform.py523 # Check if function is missing any parameters required after transformationCOMMENT
LOWfastmcp_slim/fastmcp/tools/tool_transform.py639 # Check if parameter is in transform_argsCOMMENT
LOWfastmcp_slim/fastmcp/tools/function_parsing.py318 # Check if schema is an object type, resolving $ref referencesCOMMENT
LOWfastmcp_slim/fastmcp/resources/template.py623 # Check if required parameters are a subset of the path parametersCOMMENT
LOWfastmcp_slim/fastmcp/resources/template.py629 # Check if all URI parameters are valid function parameters (skip if **kwargs present)COMMENT
LOWfastmcp_slim/fastmcp/server/elicitation.py61 # Check if items are enum/LiteralCOMMENT
LOWfastmcp_slim/fastmcp/server/elicitation.py73 # Check if items are Literal (which Pydantic represents differently)COMMENT
LOWfastmcp_slim/fastmcp/server/elicitation.py503 # Check if it's a primitive typeCOMMENT
LOWfastmcp_slim/fastmcp/server/dependencies.py862 # Check if we're in a Docket worker contextCOMMENT
LOW…cp_slim/fastmcp/server/middleware/response_limiting.py113 # Check if we should limit this toolCOMMENT
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py113 # Set status to "waiting"COMMENT
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py326 # Check if there's a pending elicitationCOMMENT
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py331 # Push response to list - this wakes up the BLPOP in elicit_for_taskCOMMENT
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py267 # Check if subscriber already running for this sessionCOMMENT
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py270 # Check if task is still running AND session is still aliveCOMMENT
LOWfastmcp_slim/fastmcp/server/tasks/requests.py272 # Check if completedCOMMENT
LOWfastmcp_slim/fastmcp/server/auth/redirect_validation.py261 # Check if URI matches any allowed patternCOMMENT
LOWfastmcp_slim/fastmcp/server/auth/cimd.py603 # Check if JTI was already used (and hasn't expired from cache)COMMENT
LOWfastmcp_slim/fastmcp/server/auth/middleware.py61 # Check if Authorization header is presentCOMMENT
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py1037 # Check if code expiredCOMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/discord.py99 # Check if token is expired (Discord returns ISO timestamp)COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/oci.py53 # Check if the signer exists for the token ID in memory cacheSTRING
LOW…cp_slim/fastmcp/server/auth/providers/introspection.py245 # Check if token is active (required field per RFC 7662)COMMENT
LOWfastmcp_slim/fastmcp/server/auth/handlers/authorize.py212 # Check if this is a client not found errorSTRING
LOWfastmcp_slim/fastmcp/server/auth/handlers/authorize.py229 # Check if response body contains "not found" errorSTRING
LOW…_slim/fastmcp/server/providers/filesystem_discovery.py167 # Check if this file is part of a packageCOMMENT
LOW…_slim/fastmcp/server/providers/filesystem_discovery.py324 # Check if this object is a component typeCOMMENT
LOW…slim/fastmcp/server/providers/skills/skill_provider.py370 # Check if it's a known supporting fileCOMMENT
LOWfastmcp_slim/fastmcp/server/sampling/run.py360 # Check if any tool requires sequential executionCOMMENT
LOWfastmcp_slim/fastmcp/server/sampling/run.py597 # Check if this is a tool use responseCOMMENT
LOW…stmcp_slim/fastmcp/server/transforms/tool_transform.py79 # Check if this name is a transformed nameCOMMENT
LOWfastmcp_slim/fastmcp/cli/run.py176 # Check if it's an MCPConfig first (has canonical mcpServers key)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py309 # Set marker to prevent infinite loops when subprocess calls FastMCPCOMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py606 # Check if we were spawned by uv (or user explicitly set --skip-env)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py709 # Check if we need to use uv run (but skip if we're already in uv or user said to skip)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py746 # Set marker to prevent infinite loops when subprocess calls FastMCP againCOMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py866 # Check if we were spawned by uv (or user explicitly set --skip-env)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py880 # Check if it's an MCPConfig (which inspect doesn't support)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py895 # Check if we need to use uv run (but skip if we're already in uv or user said to skip)COMMENT
LOWfastmcp_slim/fastmcp/cli/install/shared.py85 # Check if it's an MCPConfig (has mcpServers key)COMMENT
LOWfastmcp_slim/fastmcp/cli/install/gemini_cli.py97 # Check if Gemini CLI is availableCOMMENT
LOWfastmcp_slim/fastmcp/cli/install/claude_code.py101 # Check if Claude Code CLI is availableCOMMENT
LOWfastmcp_slim/fastmcp/utilities/logging.py43 # Check if logging is disabled in settingsCOMMENT
LOWfastmcp_slim/fastmcp/utilities/skills.py173 # Check if directory existsCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py497 # Check if one of the types is None (null)COMMENT
LOWfastmcp_slim/fastmcp/utilities/types.py72 # Check if this is Annotated[Type, "string"] and convert to Annotated[Type, Field(description="string")]COMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema.py252 # Check if original had a $refCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema.py656 # Check if any definition that references this one is itself usedCOMMENT
LOWfastmcp_slim/fastmcp/utilities/cli.py79 # Check if it's an MCPConfig first (has canonical mcpServers key)COMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py224 # Check if any schema in the map needs conversionCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py246 # Check if nested schema needs conversionCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py272 # Check if any list item needs conversionCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py219 # Check if it's a suffixed parameter (e.g., id__path)COMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py233 # Check if it's a known parameterCOMMENT
LOW…tmcp/utilities/mcp_server_config/v1/environments/uv.py117 # Check if uv is availableCOMMENT
LOW…p/utilities/mcp_server_config/v1/sources/filesystem.py36 # Check if it's a Windows path (e.g., C:\...)COMMENT
LOW…p/utilities/mcp_server_config/v1/sources/filesystem.py48 # Check if path contains an object specificationCOMMENT
24 more matches not shown…
Modern Structural Boilerplate95 hits · 94 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/__init__.py105__all__ = [CODE
LOWfastmcp_slim/fastmcp/telemetry.py114__all__ = [CODE
LOWfastmcp_slim/fastmcp/types.py112__all__ = [CODE
LOWfastmcp_slim/fastmcp/settings.py161 def set_setting(self, attr: str, value: Any) -> None:CODE
LOWfastmcp_slim/fastmcp/dependencies.py26__all__ = [CODE
LOW…lim/fastmcp/experimental/sampling/handlers/__init__.py5__all__ = ["OpenAISamplingHandler"]CODE
LOW…_slim/fastmcp/experimental/sampling/handlers/openai.py5__all__ = ["OpenAISamplingHandler"]CODE
LOW…tmcp_slim/fastmcp/experimental/transforms/code_mode.py638__all__ = [CODE
LOWfastmcp_slim/fastmcp/tools/tool_transform.py919def _set_visibility_metadata(tool: Tool, *, enabled: bool) -> None:CODE
LOWfastmcp_slim/fastmcp/tools/__init__.py13__all__ = [CODE
LOWfastmcp_slim/fastmcp/tools/base.py593__all__ = ["Tool", "ToolResult"]CODE
LOWfastmcp_slim/fastmcp/resources/__init__.py14__all__ = [CODE
LOWfastmcp_slim/fastmcp/resources/base.py466__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/__init__.py18__all__ = ["Context", "FastMCP", "create_proxy"]CODE
LOWfastmcp_slim/fastmcp/server/telemetry.py243__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/elicitation.py20__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py142__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1226 async def set_total(self, total: int) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1234 async def set_message(self, message: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1275 async def set_total(self, total: int) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1290 async def set_message(self, message: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1353 async def set_total(self, total: int) -> None:CODE
LOWfastmcp_slim/fastmcp/server/dependencies.py1363 async def set_message(self, message: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/middleware/__init__.py9__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/middleware/authorization.py50logger = logging.getLogger(__name__)CODE
LOWfastmcp_slim/fastmcp/server/middleware/middleware.py27__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/middleware/middleware.py33logger = logging.getLogger(__name__)CODE
LOW…cp_slim/fastmcp/server/middleware/response_limiting.py16__all__ = ["ResponseLimitingMiddleware"]CODE
LOW…cp_slim/fastmcp/server/middleware/response_limiting.py18logger = logging.getLogger(__name__)CODE
LOWfastmcp_slim/fastmcp/server/tasks/config.py12__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/tasks/__init__.py24__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/tasks/elicitation.py31logger = logging.getLogger(__name__)CODE
LOWfastmcp_slim/fastmcp/server/tasks/notifications.py36logger = logging.getLogger(__name__)CODE
LOWfastmcp_slim/fastmcp/server/mixins/mcp_operations.py95 def _setup_handlers(self: FastMCP) -> None:CODE
LOWfastmcp_slim/fastmcp/server/mixins/__init__.py7__all__ = ["LifespanMixin", "MCPOperationsMixin", "TransportMixin"]CODE
LOWfastmcp_slim/fastmcp/server/mixins/lifespan.py265 def _setup_task_protocol_handlers(self: FastMCP) -> None:CODE
LOWfastmcp_slim/fastmcp/server/auth/auth.py260 def set_mcp_path(self, mcp_path: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/auth/auth.py612 def set_mcp_path(self, mcp_path: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/auth/__init__.py58__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/auth/authorization.py11__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py639 def update_default_scopes(self, scopes: list[str]) -> None:CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py665 def set_mcp_path(self, mcp_path: str | None) -> None:CODE
LOW…stmcp_slim/fastmcp/server/auth/oauth_proxy/__init__.py12__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/workos.py394 def set_mcp_path(self, mcp_path: str | None) -> None:CODE
LOWfastmcp_slim/fastmcp/server/providers/aggregate.py41logger = logging.getLogger(__name__)CODE
LOWfastmcp_slim/fastmcp/server/providers/proxy.py923 def _setup_proxy_ping_handler(self) -> None:CODE
LOWfastmcp_slim/fastmcp/server/providers/__init__.py46__all__ = [CODE
LOW…im/fastmcp/server/providers/local_provider/__init__.py11__all__ = ["LocalProvider"]CODE
LOW…server/providers/local_provider/decorators/__init__.py11__all__ = [CODE
LOW…tmcp_slim/fastmcp/server/providers/openapi/provider.py42__all__ = [CODE
LOW…tmcp_slim/fastmcp/server/providers/openapi/__init__.py30__all__ = [CODE
LOW…stmcp_slim/fastmcp/server/providers/openapi/routing.py22__all__ = [CODE
LOW…cp_slim/fastmcp/server/providers/openapi/components.py48__all__ = [CODE
LOW…stmcp_slim/fastmcp/server/providers/skills/__init__.py47__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/sampling/__init__.py6__all__ = [CODE
LOWfastmcp_slim/fastmcp/server/transforms/__init__.py230__all__ = [CODE
LOW…tmcp_slim/fastmcp/server/transforms/search/__init__.py25__all__ = [CODE
LOW…mcp_slim/fastmcp/contrib/component_manager/__init__.py3__all__ = ["set_up_component_manager"]CODE
LOWfastmcp_slim/fastmcp/contrib/mcp_mixin/__init__.py3__all__ = [CODE
LOW…tmcp_slim/fastmcp/contrib/bulk_tool_caller/__init__.py3__all__ = ["BulkToolCaller"]CODE
35 more matches not shown…
AI Structural Patterns88 hits · 80 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/tools/tool_transform.py379CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py567CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py584CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py603CODE
LOWfastmcp_slim/fastmcp/tools/function_tool.py221CODE
LOWfastmcp_slim/fastmcp/tools/base.py541CODE
LOWfastmcp_slim/fastmcp/tools/base.py246CODE
LOWfastmcp_slim/fastmcp/tools/base.py437CODE
LOWfastmcp_slim/fastmcp/resources/function_resource.py244CODE
LOWfastmcp_slim/fastmcp/resources/function_resource.py85CODE
LOWfastmcp_slim/fastmcp/resources/template.py164CODE
LOWfastmcp_slim/fastmcp/resources/template.py194CODE
LOWfastmcp_slim/fastmcp/resources/template.py532CODE
LOWfastmcp_slim/fastmcp/resources/template.py444CODE
LOWfastmcp_slim/fastmcp/resources/base.py242CODE
LOWfastmcp_slim/fastmcp/server/server.py314CODE
LOWfastmcp_slim/fastmcp/server/server.py1649CODE
LOWfastmcp_slim/fastmcp/server/server.py1670CODE
LOWfastmcp_slim/fastmcp/server/server.py1785CODE
LOWfastmcp_slim/fastmcp/server/server.py1690CODE
LOWfastmcp_slim/fastmcp/server/server.py1811CODE
LOWfastmcp_slim/fastmcp/server/server.py1942CODE
LOWfastmcp_slim/fastmcp/server/server.py1958CODE
LOWfastmcp_slim/fastmcp/server/server.py1973CODE
LOWfastmcp_slim/fastmcp/server/server.py2144CODE
LOWfastmcp_slim/fastmcp/server/context.py939CODE
LOWfastmcp_slim/fastmcp/server/context.py1044CODE
LOWfastmcp_slim/fastmcp/server/context.py1059CODE
LOWfastmcp_slim/fastmcp/server/http.py543CODE
LOWfastmcp_slim/fastmcp/server/middleware/logging.py167CODE
LOWfastmcp_slim/fastmcp/server/middleware/caching.py208CODE
LOWfastmcp_slim/fastmcp/server/mixins/transport.py257CODE
LOWfastmcp_slim/fastmcp/server/mixins/transport.py369CODE
LOWfastmcp_slim/fastmcp/server/auth/oidc_proxy.py205CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/ui.py20CODE
LOWfastmcp_slim/fastmcp/server/auth/oauth_proxy/proxy.py238CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py273CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/azure.py99CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/discord.py193CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/oci.py122CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/google.py232CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/aws.py124CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/descope.py63CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/scalekit.py63CODE
LOW…tmcp_slim/fastmcp/server/auth/providers/huggingface.py177CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/github.py206CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/workos.py160CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/jwt.py214CODE
LOWfastmcp_slim/fastmcp/server/auth/providers/auth0.py63CODE
LOW…cp/server/providers/local_provider/decorators/tools.py173CODE
LOW…cp/server/providers/local_provider/decorators/tools.py194CODE
LOW…cp/server/providers/local_provider/decorators/tools.py217CODE
LOW…/server/providers/local_provider/decorators/prompts.py73CODE
LOW…/server/providers/local_provider/decorators/prompts.py90CODE
LOW…/server/providers/local_provider/decorators/prompts.py106CODE
LOW…erver/providers/local_provider/decorators/resources.py106CODE
LOWfastmcp_slim/fastmcp/server/sampling/run.py496CODE
LOWfastmcp_slim/fastmcp/server/sampling/run.py640CODE
LOWfastmcp_slim/fastmcp/cli/run.py136CODE
LOWfastmcp_slim/fastmcp/cli/client.py641CODE
28 more matches not shown…
Verbosity Indicators43 hits · 80 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py112 # Step 1: Validate token via introspection (RFC 7662).COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py187 # Step 2: Fetch user profile via userinfo.COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/google.py106 # Step 1: Verify token via tokeninfo endpoint.COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/google.py158 # Step 2: Fetch user profile from v2 userinfo endpoint.COMMENT
LOW…fastmcp/contrib/component_manager/component_manager.py101 # We need to check if it's a template (contains {}) and use "template" if soCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py540 # Step 1: replace everything except [0-9a-zA-Z_] with underscoresCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py542 # Step 2: deduplicate underscoresCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py544 # Step 3: if the first char of original name isn't a letter or underscore, prepend field_COMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py547 # Step 4: deduplicate againCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py549 # Step 5: only strip trailing underscores if they weren't in the original nameCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py552 # Step 6: if result is a Python keyword, append an underscore (PEP 8 convention)COMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py92 # Step 1: Handle nullable field conversion (OpenAPI 3.0 only)COMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py96 # Step 2: Convert oneOf to anyOf if requestedCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py100 # Step 3: Preserve discriminator tag presence before removing the keywordCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py103 # Step 4: Remove OpenAPI-specific fieldsCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py107 # Step 5: Handle readOnly/writeOnly property removalCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py113 # Step 6: Recursively process nested schemasCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py57 # Step 1: Un-flatten arguments into path, query, body, etc. using parameter mapCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py66 # Step 2: Serialize query parameters according to OpenAPI style/explodeCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py69 # Step 3: Build base URL with path parametersCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py72 # Step 4: Prepare request dataCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py79 # Step 5: Determine the declared content type from the OpenAPI spec.COMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py96 # Step 6: Handle request body — dispatch on declared content type.COMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py143 # Step 7: Create httpx.RequestCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py220 # Step 1: Register OAuth client (DCR)COMMENT
LOW…gration_tests/auth/test_github_provider_integration.py240 # Step 2: Test authorization endpoint redirects to consent pageCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py260 # Step 3: Visit consent page to get CSRF tokenCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py278 # Step 4: Approve consentCOMMENT
LOWtests/server/test_auth_integration.py549 # Step 1: First, let's create a token and refresh token at the current timeCOMMENT
LOWtests/server/test_auth_integration.py568 # Step 2: Time travel forward 4 hours (tokens expire in 1 hour by default)COMMENT
LOWtests/server/providers/test_prefab_roundtrip.py70 # Step 1: call UI tool, get structured_content with hashed refCOMMENT
LOWtests/server/providers/test_prefab_roundtrip.py73 # Step 2: call the backend tool by its hashed nameCOMMENT
LOWexamples/search/client_regex.py73 # Step 1: list_tools shows only synthetic toolsCOMMENT
LOWexamples/search/client_regex.py91 # Step 2: regex patterns discover toolsCOMMENT
LOWexamples/search/client_regex.py127 # Step 3: call discovered toolsCOMMENT
LOWexamples/search/client_bm25.py73 # Step 1: list_tools shows only synthetic tools + pinned toolsCOMMENT
LOWexamples/search/client_bm25.py92 # Step 2: natural language search discovers tools by relevanceCOMMENT
LOWexamples/search/client_bm25.py128 # Step 3: call a discovered toolCOMMENT
LOWexamples/code_mode/client.py76 # Step 1: list_tools only returns two synthetic meta-toolsCOMMENT
LOWexamples/code_mode/client.py94 # Step 2: search discovers available toolsCOMMENT
LOWexamples/code_mode/client.py111 # Step 3: execute chains tool calls in one round-tripCOMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh28# Step 1: Post comment if providedCOMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh48# Step 2: Resolve the threadCOMMENT
Structural Annotation Overuse43 hits · 80 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py112 # Step 1: Validate token via introspection (RFC 7662).COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/clerk.py187 # Step 2: Fetch user profile via userinfo.COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/google.py106 # Step 1: Verify token via tokeninfo endpoint.COMMENT
LOWfastmcp_slim/fastmcp/server/auth/providers/google.py158 # Step 2: Fetch user profile from v2 userinfo endpoint.COMMENT
LOW…cp/server/providers/local_provider/decorators/tools.py214 # NOTE: This method mirrors fastmcp.tools.tool() but adds registration andCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py540 # Step 1: replace everything except [0-9a-zA-Z_] with underscoresCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py542 # Step 2: deduplicate underscoresCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py544 # Step 3: if the first char of original name isn't a letter or underscore, prepend field_COMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py547 # Step 4: deduplicate againCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py549 # Step 5: only strip trailing underscores if they weren't in the original nameCOMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py552 # Step 6: if result is a Python keyword, append an underscore (PEP 8 convention)COMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py92 # Step 1: Handle nullable field conversion (OpenAPI 3.0 only)COMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py96 # Step 2: Convert oneOf to anyOf if requestedCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py100 # Step 3: Preserve discriminator tag presence before removing the keywordCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py103 # Step 4: Remove OpenAPI-specific fieldsCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py107 # Step 5: Handle readOnly/writeOnly property removalCOMMENT
LOW…lim/fastmcp/utilities/openapi/json_schema_converter.py113 # Step 6: Recursively process nested schemasCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py57 # Step 1: Un-flatten arguments into path, query, body, etc. using parameter mapCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py66 # Step 2: Serialize query parameters according to OpenAPI style/explodeCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py69 # Step 3: Build base URL with path parametersCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py72 # Step 4: Prepare request dataCOMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py79 # Step 5: Determine the declared content type from the OpenAPI spec.COMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py96 # Step 6: Handle request body — dispatch on declared content type.COMMENT
LOWfastmcp_slim/fastmcp/utilities/openapi/director.py143 # Step 7: Create httpx.RequestCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py220 # Step 1: Register OAuth client (DCR)COMMENT
LOW…gration_tests/auth/test_github_provider_integration.py240 # Step 2: Test authorization endpoint redirects to consent pageCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py260 # Step 3: Visit consent page to get CSRF tokenCOMMENT
LOW…gration_tests/auth/test_github_provider_integration.py278 # Step 4: Approve consentCOMMENT
LOWtests/server/test_auth_integration.py549 # Step 1: First, let's create a token and refresh token at the current timeCOMMENT
LOWtests/server/test_auth_integration.py568 # Step 2: Time travel forward 4 hours (tokens expire in 1 hour by default)COMMENT
LOWtests/server/providers/test_prefab_roundtrip.py70 # Step 1: call UI tool, get structured_content with hashed refCOMMENT
LOWtests/server/providers/test_prefab_roundtrip.py73 # Step 2: call the backend tool by its hashed nameCOMMENT
LOWexamples/search/client_regex.py73 # Step 1: list_tools shows only synthetic toolsCOMMENT
LOWexamples/search/client_regex.py91 # Step 2: regex patterns discover toolsCOMMENT
LOWexamples/search/client_regex.py127 # Step 3: call discovered toolsCOMMENT
LOWexamples/search/client_bm25.py73 # Step 1: list_tools shows only synthetic tools + pinned toolsCOMMENT
LOWexamples/search/client_bm25.py92 # Step 2: natural language search discovers tools by relevanceCOMMENT
LOWexamples/search/client_bm25.py128 # Step 3: call a discovered toolCOMMENT
LOWexamples/code_mode/client.py76 # Step 1: list_tools only returns two synthetic meta-toolsCOMMENT
LOWexamples/code_mode/client.py94 # Step 2: search discovers available toolsCOMMENT
LOWexamples/code_mode/client.py111 # Step 3: execute chains tool calls in one round-tripCOMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh28# Step 1: Post comment if providedCOMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh48# Step 2: Resolve the threadCOMMENT
Modern AI Meta-Vocabulary19 hits · 50 pts
SeverityFileLineSnippetContext
MEDIUMfastmcp_slim/fastmcp/server/context.py310 # Set current server for dependency injection (use weakref to avoid reference cycles)COMMENT
MEDIUMfastmcp_slim/fastmcp/server/auth/providers/descope.py43 - Format: ``https://.../v1/apps/agentic/P.../M.../.well-known/openid-configuration``STRING
MEDIUMfastmcp_slim/fastmcp/server/auth/providers/descope.py54 config_url="https://.../v1/apps/agentic/P.../M.../.well-known/openid-configuration",STRING
MEDIUMfastmcp_slim/fastmcp/server/auth/providers/descope.py80 config_url: Your Descope Well-Known URL (e.g., "https://.../v1/apps/agentic/P.../M.../.well-known/openid-conSTRING
MEDIUMfastmcp_slim/fastmcp/server/auth/providers/descope.py112 # Extract project_id from path (format: /v1/apps/agentic/P.../M...)COMMENT
MEDIUMtests/server/tasks/test_task_dependencies.py24 # Track dependency injectionCOMMENT
MEDIUMtests/server/auth/providers/test_descope.py22 config_url="https://api.descope.com/v1/apps/agentic/P2abc123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py34 config_url="https://api.descope.com/v1/apps/agentic/P2env123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py47 config_url="https://api.descope.com/v1/apps/agentic/P2abc123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py55 config_url="http://localhost:8080/v1/apps/agentic/P2abc123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py63 config_url="https://api.descope.com/v1/apps/agentic/P2abc123/M123",CODE
MEDIUMtests/server/auth/providers/test_descope.py128 == "https://api.descope.com/v1/apps/agentic/P2new123/M123"CODE
MEDIUMtests/server/auth/providers/test_descope.py133 config_url = "https://api.descope.com/v1/apps/agentic/P2abc123/M123/.well-known/openid-configuration"CODE
MEDIUMtests/server/auth/providers/test_descope.py134 issuer_url = "https://api.descope.com/v1/apps/agentic/P2abc123/M123"CODE
MEDIUMtests/server/auth/providers/test_descope.py154 config_url="https://api.descope.com/v1/apps/agentic/P2abc123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py181 "FASTMCP_SERVER_AUTH_DESCOPEPROVIDER_CONFIG_URL": "https://api.descope.com/v1/apps/agentic/P2env123/M123CODE
MEDIUMtests/server/auth/providers/test_descope.py187 config_url="https://api.descope.com/v1/apps/agentic/P2env123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py116 config_url="https://api.descope.com/v1/apps/agentic/P2new123/M123/.well-known/openid-configuration",CODE
MEDIUMtests/server/auth/providers/test_descope.py201 config_url="https://api.descope.com/v1/apps/agentic/P2test123/M123/.well-known/openid-configuration",CODE
Fake / Example Data31 hits · 35 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/server/tasks/requests.py73 - "user@example.com@1.0" → ("user@example.com", "1.0") # @ in URISTRING
LOWfastmcp_slim/fastmcp/utilities/openapi/formatters.py163 return "user@example.com"CODE
LOWtests/resources/test_resource_template.py503 quoted_name = quote("John Doe", safe="")CODE
LOWtests/resources/test_resource_template.py507 assert result == {"name": "John Doe", "email": "john@example.com"}CODE
LOWtests/server/tasks/test_task_elicitation_relay.py172 assert result.data == "Jane Doe"CODE
LOWtests/server/auth/test_jwt_provider_bearer.py579 verifier = JWTVerifier(public_key="dummy-key")CODE
LOWtests/server/auth/test_jwt_provider_bearer.py580 assert verifier.public_key == "dummy-key"CODE
LOWtests/server/auth/providers/test_workos.py351 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_workos.py373 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_clerk.py269 json={"email": "user@example.com"},CODE
LOWtests/server/auth/providers/test_clerk.py209 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_clerk.py241 assert result.claims["email"] == "user@example.com"CODE
LOWtests/server/auth/providers/test_clerk.py478 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_azure.py1185 await provider.get_obo_credential(user_assertion="fake-token")CODE
LOWtests/server/auth/providers/test_google.py138 extra_authorize_params={"login_hint": "user@example.com"},CODE
LOWtests/server/auth/providers/test_google.py143 assert provider._extra_authorize_params["login_hint"] == "user@example.com"CODE
LOWtests/server/auth/providers/test_google.py284 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_google.py294 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_google.py367 "email": "user@example.com",CODE
LOWtests/server/auth/providers/test_google.py374 json={"sub": "12345", "email": "user@example.com"},CODE
LOWtests/server/auth/providers/test_google.py312 assert result.claims["email"] == "user@example.com"CODE
LOW…ver/providers/openapi/test_end_to_end_compatibility.py178 "name": "John Doe", # Body parameterCODE
LOWtests/cli/test_cimd_cli.py126 assert "placeholder" in captured.errCODE
LOWtests/cli/test_cimd_cli.py136 assert "placeholder" not in captured.errCODE
LOWtests/utilities/openapi/test_director.py210 "name": "John Doe",CODE
LOWtests/utilities/openapi/test_director.py221 assert body_data["name"] == "John Doe"CODE
LOWtests/utilities/openapi/test_director.py301 "name": "John Doe",CODE
LOWtests/utilities/openapi/test_director.py310 assert body_data["name"] == "John Doe"CODE
LOWtests/utilities/openapi/test_director.py1016 flat_args = {path_param_name: 123, "name": "John Doe"}CODE
LOWtests/conformance/server.py166 name: str = Field(default="John Doe", description="User name")CODE
LOWdocs/apps/demos/dashboard.py21 {"account": "Acme Corp", "value": "$84,000", "stage": "Won"},CODE
Over-Commented Block21 hits · 21 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/server/http.py681 # (our `_lifespan_proxy`), which now drives `server._lifespan_manager()`.COMMENT
LOW…tmcp/server/providers/local_provider/local_provider.py461 # Note: Decorator methods (tool, resource, prompt, add_tool, add_resource,COMMENT
LOWfastmcp_slim/fastmcp/utilities/json_schema.py541 # We're in the main schema, so this is a root referenceCOMMENT
LOWfastmcp_slim/fastmcp/client/transports/config.py181COMMENT
LOWfastmcp_slim/fastmcp/client/transports/memory.py61 client_read, client_write = client_streamsCOMMENT
LOWtests/server/auth/providers/test_supabase.py201 async with Client(mcp_server_url) as client:COMMENT
LOW…/utilities/json_schema_type/test_real_world_schemas.py341 _record_failure("other_errors", _name, schema, e)COMMENT
LOWexamples/skills/server.py21mcp = FastMCP("Skills Server")COMMENT
LOWexamples/skills/server.py41# - VSCodeSkillsProvider() → ~/.copilot/skills/COMMENT
LOW.github/workflows/require-issue-link.yml1# Require external PRs to reference an issue with an auto-close keywordCOMMENT
LOW.github/workflows/require-issue-link.yml21# the linked issue reopens previously closed PRs automatically.COMMENT
LOW.github/workflows/require-issue-link.yml101 // ENFORCE_ISSUE_LINK=false means strictly read-only.COMMENT
LOW.github/scripts/mention/gh-get-review-threads.sh1#!/usr/bin/env bashCOMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh1#!/usr/bin/env bashCOMMENT
LOW.github/scripts/pr-review/pr-comment.sh1#!/bin/bashCOMMENT
LOW.github/scripts/pr-review/pr-comment.sh21# if err != nil {COMMENT
LOW.github/scripts/pr-review/pr-diff.sh1#!/bin/bashCOMMENT
LOW.github/scripts/pr-review/pr-remove-comment.sh1#!/bin/bashCOMMENT
LOW.github/scripts/pr-review/pr-existing-comments.sh1#!/bin/bashCOMMENT
LOW.github/scripts/pr-review/pr-review.sh1#!/bin/bashCOMMENT
LOW.github/actions/run-claude/action.yml1# Composite Action for running Claude Code ActionCOMMENT
AI Slop Vocabulary15 hits · 21 pts
SeverityFileLineSnippetContext
LOWfastmcp_slim/fastmcp/server/low_level.py97 # its own adapter, so we just pass through.COMMENT
LOWfastmcp_slim/fastmcp/server/lifespan.py132 # self._fn is already a context manager factory, just call itCOMMENT
MEDIUMfastmcp_slim/fastmcp/server/middleware/logging.py149 """Middleware that provides comprehensive request and response logging.STRING
MEDIUMfastmcp_slim/fastmcp/server/auth/ssrf.py250 """Fetch URL with comprehensive SSRF protection and DNS pinning.STRING
MEDIUMfastmcp_slim/fastmcp/server/auth/providers/in_memory.py111 # The AuthorizationHandler already does robust validation using client.validate_redirect_uriCOMMENT
LOWfastmcp_slim/fastmcp/server/auth/handlers/authorize.py240 # If we can't parse the response, just return the originalSTRING
LOW…_slim/fastmcp/server/providers/filesystem_discovery.py50 # If root is a file, just return it (if it's a .py file)COMMENT
LOWfastmcp_slim/fastmcp/cli/cli.py60 return "npx" # On Unix-like systems, just use npxCODE
LOWfastmcp_slim/fastmcp/utilities/json_schema_type.py785 # Otherwise just use the dataCOMMENT
LOWfastmcp_slim/fastmcp/utilities/cli.py81 # MCPConfig - we don't process these here, just pass throughCOMMENT
LOWfastmcp_slim/fastmcp/utilities/cli.py94 # Not a valid MCPServerConfig, just pass throughCOMMENT
LOWfastmcp_slim/fastmcp/utilities/cli.py97 # Not a valid JSON file, just pass throughCOMMENT
LOWfastmcp_slim/fastmcp/client/tasks.py422 # Unknown type - just return itCOMMENT
MEDIUMtests/conftest.py225 """Fixture that creates a FastMCP server with comprehensive tool set for provider tests."""STRING
MEDIUMtests/server/providers/openapi/test_comprehensive.py371 """Test server initialization with comprehensive spec."""STRING
Overly Generic Function Names18 hits · 20 pts
SeverityFileLineSnippetContext
LOWtests/tools/test_standalone_decorator.py161 def my_method() -> str:CODE
LOWtests/tools/test_standalone_decorator.py175 def my_method(cls) -> str:CODE
LOWtests/server/test_dependencies.py202 def process_data(value: int, config: str = Depends(fetch_config)) -> str:CODE
LOWtests/server/test_input_validation.py213 def process_data(count: int, name: str) -> str:CODE
LOWtests/server/test_input_validation.py237 def process_data(count: int, name: str) -> str:CODE
LOWtests/server/test_icons.py79 def my_function(x: int) -> int:CODE
LOWtests/server/test_icons.py130 def my_function() -> str:CODE
LOWtests/server/test_icons.py185 def my_function(id: str) -> str:CODE
LOWtests/server/test_icons.py240 def my_function(topic: str):CODE
LOWtests/server/tasks/test_server_tasks_parameter.py366 async def my_function() -> str:CODE
LOWtests/server/providers/test_local_provider_prompts.py293 def my_function() -> str:CODE
LOWtests/server/providers/test_local_provider_prompts.py240 def my_function() -> str:CODE
LOW…erver/providers/local_provider_tools/test_decorator.py313 def my_function(x: int) -> str:CODE
LOW…erver/providers/local_provider_tools/test_decorator.py324 def my_function(x: int) -> str:CODE
LOW…erver/providers/local_provider_tools/test_decorator.py292 def my_function(x: int) -> str:CODE
LOWtests/server/sampling/test_sampling_tool.py237 def my_function():CODE
LOWtests/utilities/test_typeadapter.py41 def do_something(self, x: int) -> int:CODE
LOWtests/prompts/test_prompt.py239 def process_data(CODE
Magic Placeholder Names3 hits · 15 pts
SeverityFileLineSnippetContext
HIGH…stmcp_slim/fastmcp/contrib/component_manager/README.md108 -H "Authorization: Bearer YOUR_TOKEN_HERE" \CODE
HIGH…stmcp_slim/fastmcp/contrib/component_manager/README.md134 -H "Authorization: Bearer YOUR_TOKEN_HERE" \CODE
HIGH…stmcp_slim/fastmcp/contrib/component_manager/README.md140 -H "Authorization: Bearer YOUR_TOKEN_HERE" \CODE
Example Usage Blocks7 hits · 10 pts
SeverityFileLineSnippetContext
LOW.github/scripts/mention/gh-get-review-threads.sh6# Usage:COMMENT
LOW.github/scripts/mention/gh-resolve-review-thread.sh6# Usage:COMMENT
LOW.github/scripts/pr-review/pr-comment.sh4# Usage:COMMENT
LOW.github/scripts/pr-review/pr-diff.sh4# Usage:COMMENT
LOW.github/scripts/pr-review/pr-remove-comment.sh4# Usage:COMMENT
LOW.github/scripts/pr-review/pr-existing-comments.sh4# Usage:COMMENT
LOW.github/actions/run-claude/action.yml6# Usage:COMMENT
Hallucination Indicators2 hits · 10 pts
SeverityFileLineSnippetContext
CRITICALtests/test_mcp_config.py545 assert client.transport.transport.auth.token.get_secret_value() == "test_token"STRING
CRITICALtests/test_mcp_config.py560 assert client.transport.transport.auth.token.get_secret_value() == "test_token"STRING
Dead Code3 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMfastmcp_slim/fastmcp/client/transports/base.py68CODE
MEDIUMtests/client/auth/test_oauth_static_client.py144CODE
MEDIUMtests/client/transports/test_transports.py24CODE
Slop Phrases5 hits · 6 pts
SeverityFileLineSnippetContext
LOWdocs/prefab-demo-payloads.js1window.__FASTMCP_PREFAB_DEMOS__ = {"bar-chart":"<!doctype html>\n<html lang=\"en\">\n<head>\n <title>Prefab</title>\n CODE
LOWdocs/apps/demos/hitchhikers.py99 Text("Don't forget to bring it.")CODE
LOWexamples/apps/showcase_server.py49 f"Thanks, {owner_input.rx}. Don't forget to bring it."CODE
LOWexamples/apps/showcase_server.py52 Text("Anonymous, I see? Don't forget to bring it.")CODE
MEDIUM.github/workflows/martian-triage-issue.yml155 You may not be able to do all of these things, sometimes you may find that all you can do is provide in-deptCODE