fastmcp 2.13.0rc2__py3-none-any.whl → 2.13.0.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- fastmcp/__init__.py +2 -2
- fastmcp/cli/cli.py +3 -2
- fastmcp/cli/install/claude_code.py +3 -3
- fastmcp/client/__init__.py +9 -9
- fastmcp/client/auth/oauth.py +7 -6
- fastmcp/client/client.py +10 -10
- fastmcp/client/oauth_callback.py +6 -2
- fastmcp/client/sampling.py +1 -1
- fastmcp/client/transports.py +35 -34
- fastmcp/contrib/component_manager/__init__.py +1 -1
- fastmcp/contrib/component_manager/component_manager.py +2 -2
- fastmcp/contrib/mcp_mixin/__init__.py +2 -2
- fastmcp/experimental/sampling/handlers/openai.py +2 -2
- fastmcp/experimental/server/openapi/__init__.py +5 -8
- fastmcp/experimental/server/openapi/components.py +11 -7
- fastmcp/experimental/server/openapi/routing.py +2 -2
- fastmcp/experimental/utilities/openapi/__init__.py +10 -15
- fastmcp/experimental/utilities/openapi/director.py +1 -1
- fastmcp/experimental/utilities/openapi/json_schema_converter.py +2 -2
- fastmcp/experimental/utilities/openapi/models.py +3 -3
- fastmcp/experimental/utilities/openapi/parser.py +3 -5
- fastmcp/experimental/utilities/openapi/schemas.py +2 -2
- fastmcp/mcp_config.py +2 -3
- fastmcp/prompts/__init__.py +1 -1
- fastmcp/prompts/prompt.py +9 -13
- fastmcp/resources/__init__.py +5 -5
- fastmcp/resources/resource.py +1 -3
- fastmcp/resources/resource_manager.py +1 -1
- fastmcp/resources/types.py +30 -24
- fastmcp/server/__init__.py +1 -1
- fastmcp/server/auth/__init__.py +5 -5
- fastmcp/server/auth/auth.py +2 -2
- fastmcp/server/auth/handlers/authorize.py +324 -0
- fastmcp/server/auth/jwt_issuer.py +39 -92
- fastmcp/server/auth/middleware.py +96 -0
- fastmcp/server/auth/oauth_proxy.py +236 -217
- fastmcp/server/auth/oidc_proxy.py +18 -3
- fastmcp/server/auth/providers/auth0.py +28 -15
- fastmcp/server/auth/providers/aws.py +16 -1
- fastmcp/server/auth/providers/azure.py +101 -40
- fastmcp/server/auth/providers/bearer.py +1 -1
- fastmcp/server/auth/providers/github.py +16 -1
- fastmcp/server/auth/providers/google.py +16 -1
- fastmcp/server/auth/providers/in_memory.py +2 -2
- fastmcp/server/auth/providers/introspection.py +2 -2
- fastmcp/server/auth/providers/jwt.py +17 -18
- fastmcp/server/auth/providers/supabase.py +1 -1
- fastmcp/server/auth/providers/workos.py +18 -3
- fastmcp/server/context.py +41 -12
- fastmcp/server/dependencies.py +5 -6
- fastmcp/server/elicitation.py +1 -1
- fastmcp/server/http.py +3 -4
- fastmcp/server/middleware/__init__.py +1 -1
- fastmcp/server/middleware/caching.py +1 -1
- fastmcp/server/middleware/error_handling.py +8 -8
- fastmcp/server/middleware/middleware.py +1 -1
- fastmcp/server/middleware/tool_injection.py +116 -0
- fastmcp/server/openapi.py +10 -6
- fastmcp/server/proxy.py +5 -4
- fastmcp/server/server.py +74 -55
- fastmcp/settings.py +2 -1
- fastmcp/tools/__init__.py +1 -1
- fastmcp/tools/tool.py +12 -12
- fastmcp/tools/tool_manager.py +8 -4
- fastmcp/tools/tool_transform.py +6 -6
- fastmcp/utilities/cli.py +50 -21
- fastmcp/utilities/inspect.py +2 -2
- fastmcp/utilities/json_schema_type.py +4 -4
- fastmcp/utilities/logging.py +14 -18
- fastmcp/utilities/mcp_server_config/__init__.py +3 -3
- fastmcp/utilities/mcp_server_config/v1/environments/base.py +1 -2
- fastmcp/utilities/mcp_server_config/v1/sources/base.py +0 -1
- fastmcp/utilities/openapi.py +9 -9
- fastmcp/utilities/tests.py +2 -4
- fastmcp/utilities/ui.py +126 -6
- {fastmcp-2.13.0rc2.dist-info → fastmcp-2.13.0.1.dist-info}/METADATA +5 -5
- fastmcp-2.13.0.1.dist-info/RECORD +141 -0
- fastmcp-2.13.0rc2.dist-info/RECORD +0 -138
- {fastmcp-2.13.0rc2.dist-info → fastmcp-2.13.0.1.dist-info}/WHEEL +0 -0
- {fastmcp-2.13.0rc2.dist-info → fastmcp-2.13.0.1.dist-info}/entry_points.txt +0 -0
- {fastmcp-2.13.0rc2.dist-info → fastmcp-2.13.0.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -19,7 +19,6 @@ class Environment(BaseModel, ABC):
|
|
|
19
19
|
Returns:
|
|
20
20
|
Full command ready for subprocess execution
|
|
21
21
|
"""
|
|
22
|
-
pass
|
|
23
22
|
|
|
24
23
|
async def prepare(self, output_dir: Path | None = None) -> None:
|
|
25
24
|
"""Prepare the environment (optional, can be no-op).
|
|
@@ -27,4 +26,4 @@ class Environment(BaseModel, ABC):
|
|
|
27
26
|
Args:
|
|
28
27
|
output_dir: Directory for persistent environment setup
|
|
29
28
|
"""
|
|
30
|
-
|
|
29
|
+
# Default no-op implementation
|
fastmcp/utilities/openapi.py
CHANGED
|
@@ -175,16 +175,16 @@ class HTTPRoute(FastMCPBaseModel):
|
|
|
175
175
|
# Export public symbols
|
|
176
176
|
__all__ = [
|
|
177
177
|
"HTTPRoute",
|
|
178
|
+
"HttpMethod",
|
|
179
|
+
"JsonSchema",
|
|
178
180
|
"ParameterInfo",
|
|
181
|
+
"ParameterLocation",
|
|
179
182
|
"RequestBodyInfo",
|
|
180
183
|
"ResponseInfo",
|
|
181
|
-
"
|
|
182
|
-
"ParameterLocation",
|
|
183
|
-
"JsonSchema",
|
|
184
|
-
"parse_openapi_to_http_routes",
|
|
184
|
+
"_handle_nullable_fields",
|
|
185
185
|
"extract_output_schema_from_responses",
|
|
186
186
|
"format_deep_object_parameter",
|
|
187
|
-
"
|
|
187
|
+
"parse_openapi_to_http_routes",
|
|
188
188
|
]
|
|
189
189
|
|
|
190
190
|
# Type variables for generic parser
|
|
@@ -321,7 +321,7 @@ class OpenAPIParser(
|
|
|
321
321
|
else:
|
|
322
322
|
# Special handling for components
|
|
323
323
|
if part == "components" and hasattr(target, "components"):
|
|
324
|
-
target =
|
|
324
|
+
target = target.components
|
|
325
325
|
elif hasattr(target, part): # Fallback check
|
|
326
326
|
target = getattr(target, part, None)
|
|
327
327
|
else:
|
|
@@ -1178,10 +1178,10 @@ def _add_null_to_type(schema: dict[str, Any]) -> None:
|
|
|
1178
1178
|
elif isinstance(current_type, list):
|
|
1179
1179
|
# Add null to array if not already present
|
|
1180
1180
|
if "null" not in current_type:
|
|
1181
|
-
schema["type"] = current_type
|
|
1181
|
+
schema["type"] = [*current_type, "null"]
|
|
1182
1182
|
elif "oneOf" in schema:
|
|
1183
1183
|
# Convert oneOf to anyOf with null type
|
|
1184
|
-
schema["anyOf"] = schema.pop("oneOf")
|
|
1184
|
+
schema["anyOf"] = [*schema.pop("oneOf"), {"type": "null"}]
|
|
1185
1185
|
elif "anyOf" in schema:
|
|
1186
1186
|
# Add null type to anyOf if not already present
|
|
1187
1187
|
if not any(item.get("type") == "null" for item in schema["anyOf"]):
|
|
@@ -1233,7 +1233,7 @@ def _handle_nullable_fields(schema: dict[str, Any] | Any) -> dict[str, Any] | An
|
|
|
1233
1233
|
|
|
1234
1234
|
# Handle properties nullable fields
|
|
1235
1235
|
if has_property_nullable_field and "properties" in result:
|
|
1236
|
-
for
|
|
1236
|
+
for _prop_name, prop_schema in result["properties"].items():
|
|
1237
1237
|
if isinstance(prop_schema, dict) and "nullable" in prop_schema:
|
|
1238
1238
|
nullable_value = prop_schema.pop("nullable")
|
|
1239
1239
|
if nullable_value and (
|
fastmcp/utilities/tests.py
CHANGED
|
@@ -6,7 +6,7 @@ import multiprocessing
|
|
|
6
6
|
import socket
|
|
7
7
|
import time
|
|
8
8
|
from collections.abc import AsyncGenerator, Callable, Generator
|
|
9
|
-
from contextlib import asynccontextmanager, contextmanager
|
|
9
|
+
from contextlib import asynccontextmanager, contextmanager, suppress
|
|
10
10
|
from typing import TYPE_CHECKING, Any, Literal
|
|
11
11
|
from urllib.parse import parse_qs, urlparse
|
|
12
12
|
|
|
@@ -216,10 +216,8 @@ async def run_server_async(
|
|
|
216
216
|
finally:
|
|
217
217
|
# Cleanup: cancel the task
|
|
218
218
|
server_task.cancel()
|
|
219
|
-
|
|
219
|
+
with suppress(asyncio.CancelledError):
|
|
220
220
|
await server_task
|
|
221
|
-
except asyncio.CancelledError:
|
|
222
|
-
pass
|
|
223
221
|
|
|
224
222
|
|
|
225
223
|
@contextmanager
|
fastmcp/utilities/ui.py
CHANGED
|
@@ -111,6 +111,54 @@ BUTTON_STYLES = """
|
|
|
111
111
|
# Info box / message box styles
|
|
112
112
|
INFO_BOX_STYLES = """
|
|
113
113
|
.info-box {
|
|
114
|
+
background: #f0f9ff;
|
|
115
|
+
border: 1px solid #bae6fd;
|
|
116
|
+
border-radius: 0.5rem;
|
|
117
|
+
padding: 1rem;
|
|
118
|
+
margin-bottom: 1.5rem;
|
|
119
|
+
text-align: left;
|
|
120
|
+
font-size: 0.9375rem;
|
|
121
|
+
line-height: 1.5;
|
|
122
|
+
color: #374151;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.info-box p {
|
|
126
|
+
margin-bottom: 0.5rem;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.info-box p:last-child {
|
|
130
|
+
margin-bottom: 0;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
.info-box.centered {
|
|
134
|
+
text-align: center;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.info-box.error {
|
|
138
|
+
background: #fef2f2;
|
|
139
|
+
border-color: #fecaca;
|
|
140
|
+
color: #991b1b;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.info-box strong {
|
|
144
|
+
color: #0ea5e9;
|
|
145
|
+
font-weight: 600;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.info-box .server-name-link {
|
|
149
|
+
color: #0ea5e9;
|
|
150
|
+
text-decoration: underline;
|
|
151
|
+
font-weight: 600;
|
|
152
|
+
cursor: pointer;
|
|
153
|
+
transition: opacity 0.15s;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.info-box .server-name-link:hover {
|
|
157
|
+
opacity: 0.8;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/* Monospace info box - gray styling with code font */
|
|
161
|
+
.info-box-mono {
|
|
114
162
|
background: #f9fafb;
|
|
115
163
|
border: 1px solid #e5e7eb;
|
|
116
164
|
border-radius: 0.5rem;
|
|
@@ -122,17 +170,17 @@ INFO_BOX_STYLES = """
|
|
|
122
170
|
text-align: left;
|
|
123
171
|
}
|
|
124
172
|
|
|
125
|
-
.info-box.centered {
|
|
173
|
+
.info-box-mono.centered {
|
|
126
174
|
text-align: center;
|
|
127
175
|
}
|
|
128
176
|
|
|
129
|
-
.info-box.error {
|
|
177
|
+
.info-box-mono.error {
|
|
130
178
|
background: #fef2f2;
|
|
131
179
|
border-color: #fecaca;
|
|
132
180
|
color: #991b1b;
|
|
133
181
|
}
|
|
134
182
|
|
|
135
|
-
.info-box strong {
|
|
183
|
+
.info-box-mono strong {
|
|
136
184
|
color: #111827;
|
|
137
185
|
font-weight: 600;
|
|
138
186
|
}
|
|
@@ -236,10 +284,11 @@ DETAIL_BOX_STYLES = """
|
|
|
236
284
|
|
|
237
285
|
.detail-label {
|
|
238
286
|
font-weight: 600;
|
|
239
|
-
min-width:
|
|
287
|
+
min-width: 160px;
|
|
240
288
|
color: #6b7280;
|
|
241
289
|
font-size: 0.875rem;
|
|
242
290
|
flex-shrink: 0;
|
|
291
|
+
padding-right: 1rem;
|
|
243
292
|
}
|
|
244
293
|
|
|
245
294
|
.detail-value {
|
|
@@ -252,6 +301,72 @@ DETAIL_BOX_STYLES = """
|
|
|
252
301
|
}
|
|
253
302
|
"""
|
|
254
303
|
|
|
304
|
+
# Redirect section styles (for OAuth redirect URI box)
|
|
305
|
+
REDIRECT_SECTION_STYLES = """
|
|
306
|
+
.redirect-section {
|
|
307
|
+
background: #fffbeb;
|
|
308
|
+
border: 1px solid #fcd34d;
|
|
309
|
+
border-radius: 0.5rem;
|
|
310
|
+
padding: 1rem;
|
|
311
|
+
margin-bottom: 1.5rem;
|
|
312
|
+
text-align: left;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
.redirect-section .label {
|
|
316
|
+
font-size: 0.875rem;
|
|
317
|
+
color: #6b7280;
|
|
318
|
+
font-weight: 600;
|
|
319
|
+
margin-bottom: 0.5rem;
|
|
320
|
+
display: block;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
.redirect-section .value {
|
|
324
|
+
font-family: 'SF Mono', 'Monaco', 'Consolas', 'Courier New', monospace;
|
|
325
|
+
font-size: 0.875rem;
|
|
326
|
+
color: #111827;
|
|
327
|
+
word-break: break-all;
|
|
328
|
+
margin-top: 0.25rem;
|
|
329
|
+
}
|
|
330
|
+
"""
|
|
331
|
+
|
|
332
|
+
# Collapsible details styles
|
|
333
|
+
DETAILS_STYLES = """
|
|
334
|
+
details {
|
|
335
|
+
margin-bottom: 1.5rem;
|
|
336
|
+
text-align: left;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
summary {
|
|
340
|
+
cursor: pointer;
|
|
341
|
+
font-size: 0.875rem;
|
|
342
|
+
color: #6b7280;
|
|
343
|
+
font-weight: 600;
|
|
344
|
+
list-style: none;
|
|
345
|
+
padding: 0.5rem;
|
|
346
|
+
border-radius: 0.25rem;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
summary:hover {
|
|
350
|
+
background: #f9fafb;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
summary::marker {
|
|
354
|
+
display: none;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
summary::before {
|
|
358
|
+
content: "▶";
|
|
359
|
+
display: inline-block;
|
|
360
|
+
margin-right: 0.5rem;
|
|
361
|
+
transition: transform 0.2s;
|
|
362
|
+
font-size: 0.75rem;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
details[open] summary::before {
|
|
366
|
+
transform: rotate(90deg);
|
|
367
|
+
}
|
|
368
|
+
"""
|
|
369
|
+
|
|
255
370
|
# Helper text styles
|
|
256
371
|
HELPER_TEXT_STYLES = """
|
|
257
372
|
.close-instruction, .help-text {
|
|
@@ -413,7 +528,10 @@ def create_status_message(message: str, is_success: bool = True) -> str:
|
|
|
413
528
|
|
|
414
529
|
|
|
415
530
|
def create_info_box(
|
|
416
|
-
content: str,
|
|
531
|
+
content: str,
|
|
532
|
+
is_error: bool = False,
|
|
533
|
+
centered: bool = False,
|
|
534
|
+
monospace: bool = False,
|
|
417
535
|
) -> str:
|
|
418
536
|
"""
|
|
419
537
|
Create an info box.
|
|
@@ -422,12 +540,14 @@ def create_info_box(
|
|
|
422
540
|
content: HTML content for the info box
|
|
423
541
|
is_error: True for error styling, False for normal
|
|
424
542
|
centered: True to center the text, False for left-aligned
|
|
543
|
+
monospace: True to use gray monospace font styling instead of blue
|
|
425
544
|
|
|
426
545
|
Returns:
|
|
427
546
|
HTML for info box
|
|
428
547
|
"""
|
|
429
548
|
content = html.escape(content)
|
|
430
|
-
|
|
549
|
+
base_class = "info-box-mono" if monospace else "info-box"
|
|
550
|
+
classes = [base_class]
|
|
431
551
|
if is_error:
|
|
432
552
|
classes.append("error")
|
|
433
553
|
if centered:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fastmcp
|
|
3
|
-
Version: 2.13.
|
|
3
|
+
Version: 2.13.0.1
|
|
4
4
|
Summary: The fast, Pythonic way to build MCP servers and clients.
|
|
5
5
|
Project-URL: Homepage, https://gofastmcp.com
|
|
6
6
|
Project-URL: Repository, https://github.com/jlowin/fastmcp
|
|
@@ -14,6 +14,7 @@ Classifier: License :: OSI Approved :: Apache Software License
|
|
|
14
14
|
Classifier: Programming Language :: Python :: 3.10
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.11
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
18
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
18
19
|
Classifier: Typing :: Typed
|
|
19
20
|
Requires-Python: >=3.10
|
|
@@ -24,10 +25,10 @@ Requires-Dist: httpx>=0.28.1
|
|
|
24
25
|
Requires-Dist: mcp<2.0.0,>=1.17.0
|
|
25
26
|
Requires-Dist: openapi-core>=0.19.5
|
|
26
27
|
Requires-Dist: openapi-pydantic>=0.5.1
|
|
27
|
-
Requires-Dist:
|
|
28
|
+
Requires-Dist: platformdirs>=4.0.0
|
|
29
|
+
Requires-Dist: py-key-value-aio[disk,keyring,memory]<0.3.0,>=0.2.6
|
|
28
30
|
Requires-Dist: pydantic[email]>=2.11.7
|
|
29
31
|
Requires-Dist: pyperclip>=1.9.0
|
|
30
|
-
Requires-Dist: pytest-asyncio>=1.2.0
|
|
31
32
|
Requires-Dist: python-dotenv>=1.1.0
|
|
32
33
|
Requires-Dist: rich>=13.9.4
|
|
33
34
|
Requires-Dist: websockets>=15.0.1
|
|
@@ -248,7 +249,6 @@ Access MCP session capabilities within your tools, resources, or prompts by addi
|
|
|
248
249
|
|
|
249
250
|
- **Logging:** Log messages to MCP clients with `ctx.info()`, `ctx.error()`, etc.
|
|
250
251
|
- **LLM Sampling:** Use `ctx.sample()` to request completions from the client's LLM.
|
|
251
|
-
- **HTTP Request:** Use `ctx.http_request()` to make HTTP requests to other servers.
|
|
252
252
|
- **Resource Access:** Use `ctx.read_resource()` to access resources on the server
|
|
253
253
|
- **Progress Reporting:** Use `ctx.report_progress()` to report progress to the client.
|
|
254
254
|
- and more...
|
|
@@ -358,7 +358,7 @@ FastMCP provides comprehensive authentication support that sets it apart from ba
|
|
|
358
358
|
Protecting a server takes just two lines:
|
|
359
359
|
|
|
360
360
|
```python
|
|
361
|
-
from fastmcp.server.auth import GoogleProvider
|
|
361
|
+
from fastmcp.server.auth.providers.google import GoogleProvider
|
|
362
362
|
|
|
363
363
|
auth = GoogleProvider(client_id="...", client_secret="...", base_url="https://myserver.com")
|
|
364
364
|
mcp = FastMCP("Protected Server", auth=auth)
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
fastmcp/__init__.py,sha256=oKNRn6cUVk3nabmXR9SFEvKz-yotC8tVDNYRorxX-Wk,1544
|
|
2
|
+
fastmcp/exceptions.py,sha256=-krEavxwddQau6T7MESCR4VjKNLfP9KHJrU1p3y72FU,744
|
|
3
|
+
fastmcp/mcp_config.py,sha256=7NWIUhe_D_2VpJ6bhgSX7MG4QFaLz9S7qhY-BV7BGAU,11361
|
|
4
|
+
fastmcp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
+
fastmcp/settings.py,sha256=RqtXzbIGFWLFbgK82pGOx-OGWtrVKZe3KcBWinCgACY,13936
|
|
6
|
+
fastmcp/cli/__init__.py,sha256=Ii284TNoG5lxTP40ETMGhHEq3lQZWxu9m9JuU57kUpQ,87
|
|
7
|
+
fastmcp/cli/cli.py,sha256=NBQkeLdkaIGTtNsVqadUKf6_KhgWOzRBTCo4Si5q-Hk,29123
|
|
8
|
+
fastmcp/cli/run.py,sha256=HeaiHYcVY17JpHg4UjnIHkP5ttU0PNd1bZIL3brif8A,7047
|
|
9
|
+
fastmcp/cli/install/__init__.py,sha256=FUrwjMVaxONgz1qO7suzJNz1xosRfR3TOHlr3Z77JXA,797
|
|
10
|
+
fastmcp/cli/install/claude_code.py,sha256=vGv8hbMUM6p5uQ1scy6E7Qxn0BZ2_INATF0xmSl5QWQ,7617
|
|
11
|
+
fastmcp/cli/install/claude_desktop.py,sha256=aX_BrH5ODEN6UPHdw-Gnh0r5g8TojvTA7trqQRCEdAw,6832
|
|
12
|
+
fastmcp/cli/install/cursor.py,sha256=o84evDEY7ZPVnljXY7KHiRwBrOm-zS39pu01LownSIw,10476
|
|
13
|
+
fastmcp/cli/install/gemini_cli.py,sha256=G7NhKnH21893baQjmVbFpwRyMbYIq7bocPQz1CBUH_8,7630
|
|
14
|
+
fastmcp/cli/install/mcp_json.py,sha256=l7b0sWB10YlbcXtcwJv1X2iHEP9V9EwuuD63PyTMvXI,5832
|
|
15
|
+
fastmcp/cli/install/shared.py,sha256=_1MNGCqf7BsAL6ntwA75wn86-0g-248ppQSAPQ8uTXk,5103
|
|
16
|
+
fastmcp/client/__init__.py,sha256=QHvSGJCLejQkQ4o070vsUdKNB8vUhxckBByvHjnteTQ,663
|
|
17
|
+
fastmcp/client/client.py,sha256=HA46tP0-aRgvNw542jfcKRM0nbVpzq9lyZLQ9YmYCJc,35875
|
|
18
|
+
fastmcp/client/elicitation.py,sha256=VNWgeBe2KipLp9mCc-6AApmfYAU1OlH9_3JdskfW_Wc,2521
|
|
19
|
+
fastmcp/client/logging.py,sha256=WBByRoBIB-Bl3ZUJVFvHqRt4teYPAvqC8MnJ358Elg8,1939
|
|
20
|
+
fastmcp/client/messages.py,sha256=NIPjt-5js_DkI5BD4OVdTf6pz-nGjc2dtbgt-vAY234,4329
|
|
21
|
+
fastmcp/client/oauth_callback.py,sha256=3xqL5_HD1QS9eGfw31HzoVF94QQelq_0TTqS7qWDlQQ,7709
|
|
22
|
+
fastmcp/client/progress.py,sha256=WjLLDbUKMsx8DK-fqO7AGsXb83ak-6BMrLvzzznGmcI,1043
|
|
23
|
+
fastmcp/client/roots.py,sha256=IxI_bHwHTmg6c2H-s1av1ZgrRnNDieHtYwdGFbzXT5c,2471
|
|
24
|
+
fastmcp/client/sampling.py,sha256=MEXgywI46X-E78gCLCKEiQ14iu4uQqohLav-MNCtD_U,1819
|
|
25
|
+
fastmcp/client/transports.py,sha256=eJqs7fUvfbyuBX46KXDHqhezK50jyROP9xArz60Q0xg,40897
|
|
26
|
+
fastmcp/client/auth/__init__.py,sha256=4DNsfp4iaQeBcpds0JDdMn6Mmfud44stWLsret0sVKY,91
|
|
27
|
+
fastmcp/client/auth/bearer.py,sha256=MFEFqcH6u_V86msYiOsEFKN5ks1V9BnBNiPsPLHUTqo,399
|
|
28
|
+
fastmcp/client/auth/oauth.py,sha256=6Ici1c6mqJCr0LBG65RaRzUVeI4RjblOoZKPcPwDdfY,11875
|
|
29
|
+
fastmcp/contrib/README.md,sha256=rKknYSI1T192UvSszqwwDlQ2eYQpxywrNTLoj177SYU,878
|
|
30
|
+
fastmcp/contrib/bulk_tool_caller/README.md,sha256=5aUUY1TSFKtz1pvTLSDqkUCkGkuqMfMZNsLeaNqEgAc,1960
|
|
31
|
+
fastmcp/contrib/bulk_tool_caller/__init__.py,sha256=xvGSSaUXTQrc31erBoi1Gh7BikgOliETDiYVTP3rLxY,75
|
|
32
|
+
fastmcp/contrib/bulk_tool_caller/bulk_tool_caller.py,sha256=2NcrGS59qvHo1lfbRaT8NSWfCxN66knciLxFvnGwCLY,4165
|
|
33
|
+
fastmcp/contrib/bulk_tool_caller/example.py,sha256=6og_8pCJN_CabworC5R82zPAwwwM-W7HNJLQQSnS3lU,319
|
|
34
|
+
fastmcp/contrib/component_manager/README.md,sha256=sTan1D51jzkPNnCQTxwd5JXGzWVy4DtkUjrUfNH3-F0,4457
|
|
35
|
+
fastmcp/contrib/component_manager/__init__.py,sha256=9xu58ftB0Aqd5RymZgnkJMH9rTHBcrO6iMQX9qdEy3s,164
|
|
36
|
+
fastmcp/contrib/component_manager/component_manager.py,sha256=lS2KDsx_W6GDncWx6NhVNhg1X0TeGwQHWqP5PzlDPRM,6424
|
|
37
|
+
fastmcp/contrib/component_manager/component_service.py,sha256=WGu3XcZSbHriSjvMfuroNZuT5xWWoYbEiIow8FPQNYg,8712
|
|
38
|
+
fastmcp/contrib/component_manager/example.py,sha256=N16OIHmQuR-LNEv7bkrv2rGdMs862Nc3AKKEPfw-6rU,1587
|
|
39
|
+
fastmcp/contrib/mcp_mixin/README.md,sha256=f6ine6z9kuEx1qKhY9jzrH6sAwj1oWpXcLXGvK0GMVk,5404
|
|
40
|
+
fastmcp/contrib/mcp_mixin/__init__.py,sha256=zZFHlAGexUJCDLAg4p7CGZDmb-mgPdN1xVv0tR4mg7I,153
|
|
41
|
+
fastmcp/contrib/mcp_mixin/example.py,sha256=GnunkXmtG5hLLTUsM8aW5ZURU52Z8vI4tNLl-fK7Dg0,1228
|
|
42
|
+
fastmcp/contrib/mcp_mixin/mcp_mixin.py,sha256=Ij009tiJBj1Lciz4abTICA1Il-kz_myr4aevQ4yGTNo,10582
|
|
43
|
+
fastmcp/experimental/sampling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
|
+
fastmcp/experimental/sampling/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
|
+
fastmcp/experimental/sampling/handlers/base.py,sha256=mCPFj9ETc-Ro38R_pzx9rHVM2_EADCecScMkNWd6Tbs,714
|
|
46
|
+
fastmcp/experimental/sampling/handlers/openai.py,sha256=ofNTv1p5Lf-A_SKWD-mEpx28k0E5SbYwRNLbjx-npyY,5765
|
|
47
|
+
fastmcp/experimental/server/openapi/README.md,sha256=1Mc1Ur15OxMn-wAPEa1rZIiNNSMdv9sboQ3YpvNpUXM,9886
|
|
48
|
+
fastmcp/experimental/server/openapi/__init__.py,sha256=cZPebMY9xwjW8nUgTN5MvawnZEFx9E0Oe_TFqSrevp0,728
|
|
49
|
+
fastmcp/experimental/server/openapi/components.py,sha256=rKbrIZRaxV-mtpmeW2ZlYtCLE2eaScZF-3rKaMi9-rA,13371
|
|
50
|
+
fastmcp/experimental/server/openapi/routing.py,sha256=hAhQCtode5NuEDVfzeMj5vK03T6ylOub_f7irgwoa5w,4031
|
|
51
|
+
fastmcp/experimental/server/openapi/server.py,sha256=WQeUA3v69ZhrzN1-cbrDTC8EsaOXHwDSQT_NPgYrECk,16099
|
|
52
|
+
fastmcp/experimental/utilities/openapi/README.md,sha256=pOXftamuVXxEMlOt-JAfpuvHeRGauC3l46ntD1WzM-A,8604
|
|
53
|
+
fastmcp/experimental/utilities/openapi/__init__.py,sha256=6FTQyP-kWvFg5Ykq53j7byBhPuysOyMYSrFTdUAKeO0,1592
|
|
54
|
+
fastmcp/experimental/utilities/openapi/director.py,sha256=m5QJDklBjMUJQEaoDPAZsu7tcJ1AI8hop05d_ElgJ0Y,8059
|
|
55
|
+
fastmcp/experimental/utilities/openapi/formatters.py,sha256=1RCd8DwPU8_4uF51pj8Qp3oSZkZmoxL5VUwxBzokAMg,15540
|
|
56
|
+
fastmcp/experimental/utilities/openapi/json_schema_converter.py,sha256=z8FjEDedsvAU1tT_ztl7oL_ERbjGufS3meVO-WKJhuE,13089
|
|
57
|
+
fastmcp/experimental/utilities/openapi/models.py,sha256=-kfndwZSe92tVtKAgOuFn5rk1tN7oydCZKtLOEMEalA,2805
|
|
58
|
+
fastmcp/experimental/utilities/openapi/parser.py,sha256=SdVRNCpgSyZOOSXNUgW_ntCSlgtxIA8SAKFnXfH9Q20,34386
|
|
59
|
+
fastmcp/experimental/utilities/openapi/schemas.py,sha256=84nPtnOlfjNoFGDoVoWLs0dh_7Ps92p3AuHgpVA5a-s,23349
|
|
60
|
+
fastmcp/prompts/__init__.py,sha256=BQ5ooDJcNhb5maYBcg2mF1VaHAY_A64cEU3UiCQ3Lw8,179
|
|
61
|
+
fastmcp/prompts/prompt.py,sha256=G-P_Ln1xTQRy-bTyMFy2v--9guTNpn92e30cmysX1Q0,14335
|
|
62
|
+
fastmcp/prompts/prompt_manager.py,sha256=5ZyT0blp5owuaN5pz_TQsyH6zUGFoUiVTGfiEnqBuj8,4262
|
|
63
|
+
fastmcp/resources/__init__.py,sha256=si8aT_9taxUNN0vkfbifst_SCId56DZmYi4YOb4mtlE,463
|
|
64
|
+
fastmcp/resources/resource.py,sha256=Rt260JyWuC_7Ufo3TtKxjPyKCTV-3zfsFF9wqHL8yWw,7168
|
|
65
|
+
fastmcp/resources/resource_manager.py,sha256=uCEYpPqSfaakxAtyaqWT1urft8uKu_08rZCxMPOgH3Y,13268
|
|
66
|
+
fastmcp/resources/template.py,sha256=vu9InVUKc5CvEOUvlTXsZ8-tpet_-kf8yX-rNrxE4Pw,14802
|
|
67
|
+
fastmcp/resources/types.py,sha256=efFLGD1Xc5Xq3sxlPaZ_8gtJ2UOixueTBV4KQTi4cOU,4936
|
|
68
|
+
fastmcp/server/__init__.py,sha256=qxNmIJcqsrpxpUvCv0mhdEAaUn1UZd1xLd8XRoWUlfY,119
|
|
69
|
+
fastmcp/server/context.py,sha256=W6qbSzNclJJqHWAX3vPHuTy4_3CYjJwT07fkrXZr4Co,26780
|
|
70
|
+
fastmcp/server/dependencies.py,sha256=GAD2mHwDdRguAO3QbA8ungLfCtMGA5IOyEDtjlABWUw,3903
|
|
71
|
+
fastmcp/server/elicitation.py,sha256=WYsj-H9U-t3b6awcLUWl1b1EA5X48Ef6_kvLhxYgYGs,8777
|
|
72
|
+
fastmcp/server/http.py,sha256=IMggGikJxIMg1CkHH1du3BiKtbD2SU4wDyS0xvLG1O8,12032
|
|
73
|
+
fastmcp/server/low_level.py,sha256=b1Sx0_Py0QxeLXSLdDA5PjR9Dd9ANB7KSNkkGSr1AeE,5490
|
|
74
|
+
fastmcp/server/openapi.py,sha256=xWiQC3mjk81G7ZWhXF3PpECuCM1arD2tiHF9EM9kUyU,42332
|
|
75
|
+
fastmcp/server/proxy.py,sha256=cFQ2Cnnd6SfMfDhP3SvQACBB0j58m1oPWI1rA-A-K2M,25800
|
|
76
|
+
fastmcp/server/server.py,sha256=tm7rEV1cX-jdHs08waX4-TiAG6dH8V1a8zEmPdyMkq4,109416
|
|
77
|
+
fastmcp/server/auth/__init__.py,sha256=piRs8yWFWn2bjddJPOnclornIo4F-XFj6c8tdHl802A,695
|
|
78
|
+
fastmcp/server/auth/auth.py,sha256=LluGLYxM6dWlpJoDKpNBLe4_QQOdK46ETeO808MvsSM,13660
|
|
79
|
+
fastmcp/server/auth/jwt_issuer.py,sha256=lJYvrpC1ygI4jkoJlL_nTH6m7FKdTw2lbEycKo4eHLY,7197
|
|
80
|
+
fastmcp/server/auth/middleware.py,sha256=xwj3fUCLSlJK6n1Ehp-FN1qnjKqEz8b7LGAGMTqQ8Hk,3284
|
|
81
|
+
fastmcp/server/auth/oauth_proxy.py,sha256=PgA8m5OjOcVHKdSt7U4_iIq1JwxchnoiSkmnKWDkb3Q,84053
|
|
82
|
+
fastmcp/server/auth/oidc_proxy.py,sha256=NxFlEWOuceTPNhkckR0wpPtSutSCQsaWYPZPjTiSqKw,14487
|
|
83
|
+
fastmcp/server/auth/redirect_validation.py,sha256=Jlhela9xpTbw4aWnQ04A5Z-TW0HYOC3f9BMsq3NXx1Q,2000
|
|
84
|
+
fastmcp/server/auth/handlers/authorize.py,sha256=szfmMSRPL5D6sfi3awsg04UXBokVk4x_tJhAnYjHRfs,11453
|
|
85
|
+
fastmcp/server/auth/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
86
|
+
fastmcp/server/auth/providers/auth0.py,sha256=dZkc7hppii20YWota_6_Y3vdNw-DZSq0OyModbly-RA,7814
|
|
87
|
+
fastmcp/server/auth/providers/aws.py,sha256=MXoEEnXmeIlRjaHqTeNCmJ90iTx9jwUdEdpyLUmzfIc,10852
|
|
88
|
+
fastmcp/server/auth/providers/azure.py,sha256=i9ozDabWxBl84G2GK_kxqfqWss4Mgb8O7Rr6A-15Kj0,15946
|
|
89
|
+
fastmcp/server/auth/providers/bearer.py,sha256=LwkCfDJS48BxBxZwrIrauqNfCtDrJtGqYyEWnJjUq7s,923
|
|
90
|
+
fastmcp/server/auth/providers/descope.py,sha256=mbqToTMLVR5-ZTUECv9jhVeT3TNjrXStL-D_zCE2Y1U,6348
|
|
91
|
+
fastmcp/server/auth/providers/github.py,sha256=xsv-Qj1VJRc64YcRuUG4a61xFH1nqqVX_biC7B1su9U,12414
|
|
92
|
+
fastmcp/server/auth/providers/google.py,sha256=5e-XnbAB1xWV0wVPiTg4Lmn_oyniP07wfZ2OKZPDQDM,13629
|
|
93
|
+
fastmcp/server/auth/providers/in_memory.py,sha256=bYg_vNNOiQjRl71KpLTmsSZJwqJl4wUbU2zYFZnWhK4,14257
|
|
94
|
+
fastmcp/server/auth/providers/introspection.py,sha256=v2hlcuxxwug5myCr4KcTZlawwazAWYVHuRb0d3er13w,10733
|
|
95
|
+
fastmcp/server/auth/providers/jwt.py,sha256=yn_p60afjJ8SvPyQ60_NrfbopE7QQbVurIvAY0G_xG4,19647
|
|
96
|
+
fastmcp/server/auth/providers/scalekit.py,sha256=_CEdJ5S9eT24gnNlVYzRMhNAjrkoysVOAPDoyAz8Pxw,6628
|
|
97
|
+
fastmcp/server/auth/providers/supabase.py,sha256=An9eRZA5yLUC6Nt_eJlIsGaXFtAx0Gwsc1g0b1QGHlY,6478
|
|
98
|
+
fastmcp/server/auth/providers/workos.py,sha256=RILp4Y04FE7VmvAmYA60IZ3SOlFXf2SKEgV7Jri5rbM,17232
|
|
99
|
+
fastmcp/server/middleware/__init__.py,sha256=LXT2IcZI4gbAtR4TnA7v_1lOWBR6eaHiE3Cp32Pv0bc,155
|
|
100
|
+
fastmcp/server/middleware/caching.py,sha256=FFbYcnWMzmWZWnIPnFKh7tFXOhCi0R8D8Hs7DPGz68s,18277
|
|
101
|
+
fastmcp/server/middleware/error_handling.py,sha256=eSMKrmIxDcnhzLGyOL49hup5k5e0iwvH_n2XVxJ69W8,7726
|
|
102
|
+
fastmcp/server/middleware/logging.py,sha256=oxFeMH5E5xs2i_Dbb9atmwbfG8Sohnlh8qgFB_L92uI,9411
|
|
103
|
+
fastmcp/server/middleware/middleware.py,sha256=Kz04QS_R7hkPgpihtSOYTT6qyWUKENYLgo3ca4Na0zI,6611
|
|
104
|
+
fastmcp/server/middleware/rate_limiting.py,sha256=MwhMOhgsIhZjYwEQB8H8961hohV5564JlTwwYy_9ctU,7915
|
|
105
|
+
fastmcp/server/middleware/timing.py,sha256=lL_xc-ErLD5lplfvd5-HIyWEbZhgNBYkcQ74KFXAMkA,5591
|
|
106
|
+
fastmcp/server/middleware/tool_injection.py,sha256=zElqBN-yjZvcTADp57e0dn86kpxT9xsFqvYztiXuA08,3595
|
|
107
|
+
fastmcp/server/sampling/handler.py,sha256=yjLzvxlGllE-EY4bc6djsijEmwMT24PCpV6vJl-sPcI,580
|
|
108
|
+
fastmcp/tools/__init__.py,sha256=XGcaMkBgwr-AHzbNjyjdb3ATgp5TQ0wzSq0nsrBD__E,201
|
|
109
|
+
fastmcp/tools/tool.py,sha256=flY_cJsxqUjNpeObTVFo_QeC54t3ynJOuS87ULJi4pQ,20128
|
|
110
|
+
fastmcp/tools/tool_manager.py,sha256=pCQGvKimXYEigcUqRHBd6_mbfJwD2KN3i0SmFj9Fj_c,5913
|
|
111
|
+
fastmcp/tools/tool_transform.py,sha256=P6f2WVnqqFq9PEsN16go9FzpoRuV8sumxTShzKc6G8U,38462
|
|
112
|
+
fastmcp/utilities/__init__.py,sha256=-imJ8S-rXmbXMWeDamldP-dHDqAPg_wwmPVz-LNX14E,31
|
|
113
|
+
fastmcp/utilities/auth.py,sha256=ZVHkNb4YBpLE1EmmFyhvFB2qfWDZdEYNH9TRI9jylOE,1140
|
|
114
|
+
fastmcp/utilities/cli.py,sha256=46gyOddE8kWhUV2lHFM7kA2v0YNyzcajvIX3Db8gJXk,12174
|
|
115
|
+
fastmcp/utilities/components.py,sha256=lYB58QVm97szKjZ5kBs0aUKTQeIIEREte7WX5IHK5TU,5991
|
|
116
|
+
fastmcp/utilities/exceptions.py,sha256=7Z9j5IzM5rT27BC1Mcn8tkS-bjqCYqMKwb2MMTaxJYU,1350
|
|
117
|
+
fastmcp/utilities/http.py,sha256=1ns1ymBS-WSxbZjGP6JYjSO52Wa_ls4j4WbnXiupoa4,245
|
|
118
|
+
fastmcp/utilities/inspect.py,sha256=3wYUuQH1xCCCdzZwALHNqaRABH6iqpA43dIXEhqVb5Q,18030
|
|
119
|
+
fastmcp/utilities/json_schema.py,sha256=jR-J_6IKVYe3VCwgrDLwiKJOGTdekvgbQJWXnEKJLHs,8824
|
|
120
|
+
fastmcp/utilities/json_schema_type.py,sha256=AjBhZtAj9-g6goCZbzrSyFthlwrRrfrE4DzgCuphYdw,22250
|
|
121
|
+
fastmcp/utilities/logging.py,sha256=unGonXJEr3hMLqqg-vLVZrLwnt_miw0KyM81ea4T82c,6952
|
|
122
|
+
fastmcp/utilities/mcp_config.py,sha256=qATTXMGiYET-7PflOixQOgiw3aOizX-RlloRjAo7nwI,1796
|
|
123
|
+
fastmcp/utilities/openapi.py,sha256=eyIXuFZeOoucDh0bYZEo5iUfY0ED3G1ic2rvVNS8OdQ,63293
|
|
124
|
+
fastmcp/utilities/tests.py,sha256=ChjKv-k5vf9y4ZHqItagBtooqPNrQiiJLAARUVOEP6M,8922
|
|
125
|
+
fastmcp/utilities/types.py,sha256=ZOgLVKkBwnB7npl6kk6zoS2sK17JWDbfRTzLUzXsrWU,14755
|
|
126
|
+
fastmcp/utilities/ui.py,sha256=Um089bgOO1BD45FWHKxLl31S9YniGVSIAVC3jLPnIqA,14010
|
|
127
|
+
fastmcp/utilities/mcp_server_config/__init__.py,sha256=hHBxEwRsrgN0Q-1bvj28X6UVGDpfG6dt3yfSBGsOY80,791
|
|
128
|
+
fastmcp/utilities/mcp_server_config/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
129
|
+
fastmcp/utilities/mcp_server_config/v1/mcp_server_config.py,sha256=65ZOxYEEVDg1lT_T99vTT9JZOhgQblNXYXbwgCYNPhc,15437
|
|
130
|
+
fastmcp/utilities/mcp_server_config/v1/schema.json,sha256=ymDNFOWzcpnhIMeJmVPTw9b-NtHoHoru8Mc0WlSVxUY,8602
|
|
131
|
+
fastmcp/utilities/mcp_server_config/v1/environments/__init__.py,sha256=Tkv0dmJ6tKKotOBo-tho09QVdvEjy37iBsvBbEwH0EA,256
|
|
132
|
+
fastmcp/utilities/mcp_server_config/v1/environments/base.py,sha256=fbC1C25jI1whwXLlIQtmji5B4UEHLgKvw5K8NICb33Y,826
|
|
133
|
+
fastmcp/utilities/mcp_server_config/v1/environments/uv.py,sha256=DPVAXM5JDTN89wOSQsFnww4khRfNphXY2yzVeiKicNg,9755
|
|
134
|
+
fastmcp/utilities/mcp_server_config/v1/sources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
135
|
+
fastmcp/utilities/mcp_server_config/v1/sources/base.py,sha256=Y5MCxJyoDsaxcBN1zDL0CZtF5oAXxT_yqQOI-ze9b34,967
|
|
136
|
+
fastmcp/utilities/mcp_server_config/v1/sources/filesystem.py,sha256=eFX47XNXz2oKHW8MZvx60dqyHkBxdg2FMOrHcyAS28g,8106
|
|
137
|
+
fastmcp-2.13.0.1.dist-info/METADATA,sha256=EqUM1rRUJ4qVnyIO-NULW253sqJ-ry8poe9XDKYJ3Ss,20038
|
|
138
|
+
fastmcp-2.13.0.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
139
|
+
fastmcp-2.13.0.1.dist-info/entry_points.txt,sha256=ff8bMtKX1JvXyurMibAacMSKbJEPmac9ffAKU9mLnM8,44
|
|
140
|
+
fastmcp-2.13.0.1.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
|
141
|
+
fastmcp-2.13.0.1.dist-info/RECORD,,
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
fastmcp/__init__.py,sha256=KX2d8UjlyJdYwock62tYV7vJSRwyxzrjq-jnU6Gre_c,1544
|
|
2
|
-
fastmcp/exceptions.py,sha256=-krEavxwddQau6T7MESCR4VjKNLfP9KHJrU1p3y72FU,744
|
|
3
|
-
fastmcp/mcp_config.py,sha256=zbli5c8hcUfxOlqYFBJXbogpVlXwtnCuJjTg3oTfmtQ,11375
|
|
4
|
-
fastmcp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
|
-
fastmcp/settings.py,sha256=2QZY4PdEal3TrYufwyYm_rTTdayaaXt_jOEXjFSukpI,13874
|
|
6
|
-
fastmcp/cli/__init__.py,sha256=Ii284TNoG5lxTP40ETMGhHEq3lQZWxu9m9JuU57kUpQ,87
|
|
7
|
-
fastmcp/cli/cli.py,sha256=Ed3fxQ7XicrmkaykxtxqUuo5iZLUam-tBq4uvU_awjU,29096
|
|
8
|
-
fastmcp/cli/run.py,sha256=HeaiHYcVY17JpHg4UjnIHkP5ttU0PNd1bZIL3brif8A,7047
|
|
9
|
-
fastmcp/cli/install/__init__.py,sha256=FUrwjMVaxONgz1qO7suzJNz1xosRfR3TOHlr3Z77JXA,797
|
|
10
|
-
fastmcp/cli/install/claude_code.py,sha256=3JDEzWFtS_Ul8384vgUAJZkzG--rWhRgXIL3R0wuIpA,7649
|
|
11
|
-
fastmcp/cli/install/claude_desktop.py,sha256=aX_BrH5ODEN6UPHdw-Gnh0r5g8TojvTA7trqQRCEdAw,6832
|
|
12
|
-
fastmcp/cli/install/cursor.py,sha256=o84evDEY7ZPVnljXY7KHiRwBrOm-zS39pu01LownSIw,10476
|
|
13
|
-
fastmcp/cli/install/gemini_cli.py,sha256=G7NhKnH21893baQjmVbFpwRyMbYIq7bocPQz1CBUH_8,7630
|
|
14
|
-
fastmcp/cli/install/mcp_json.py,sha256=l7b0sWB10YlbcXtcwJv1X2iHEP9V9EwuuD63PyTMvXI,5832
|
|
15
|
-
fastmcp/cli/install/shared.py,sha256=_1MNGCqf7BsAL6ntwA75wn86-0g-248ppQSAPQ8uTXk,5103
|
|
16
|
-
fastmcp/client/__init__.py,sha256=J-RcLU2WcnYnstXWoW01itGtAg7DEjvCsWyqQKQljoo,663
|
|
17
|
-
fastmcp/client/client.py,sha256=ToiMSICH9wIl1HWvNoHSvb2JqJEBizrhvdh8UQ7rFQI,35851
|
|
18
|
-
fastmcp/client/elicitation.py,sha256=VNWgeBe2KipLp9mCc-6AApmfYAU1OlH9_3JdskfW_Wc,2521
|
|
19
|
-
fastmcp/client/logging.py,sha256=WBByRoBIB-Bl3ZUJVFvHqRt4teYPAvqC8MnJ358Elg8,1939
|
|
20
|
-
fastmcp/client/messages.py,sha256=NIPjt-5js_DkI5BD4OVdTf6pz-nGjc2dtbgt-vAY234,4329
|
|
21
|
-
fastmcp/client/oauth_callback.py,sha256=G6pTVQfamkzFowUPOWj6xbhtnIQLHJJfldaDKIJfHJ4,7633
|
|
22
|
-
fastmcp/client/progress.py,sha256=WjLLDbUKMsx8DK-fqO7AGsXb83ak-6BMrLvzzznGmcI,1043
|
|
23
|
-
fastmcp/client/roots.py,sha256=IxI_bHwHTmg6c2H-s1av1ZgrRnNDieHtYwdGFbzXT5c,2471
|
|
24
|
-
fastmcp/client/sampling.py,sha256=TXRj1Fs9lOk1wukhaHhPS__HGqpTieXSq2Rasj1F-e0,1819
|
|
25
|
-
fastmcp/client/transports.py,sha256=qrzEtOuBbBdrqWxlpkxMlnUyypu_yVVz9KI0dBsOQi4,40944
|
|
26
|
-
fastmcp/client/auth/__init__.py,sha256=4DNsfp4iaQeBcpds0JDdMn6Mmfud44stWLsret0sVKY,91
|
|
27
|
-
fastmcp/client/auth/bearer.py,sha256=MFEFqcH6u_V86msYiOsEFKN5ks1V9BnBNiPsPLHUTqo,399
|
|
28
|
-
fastmcp/client/auth/oauth.py,sha256=pXgHDseI10AfzH7lsVfptSfflUjamtEU1rYhD9gLeMQ,11788
|
|
29
|
-
fastmcp/contrib/README.md,sha256=rKknYSI1T192UvSszqwwDlQ2eYQpxywrNTLoj177SYU,878
|
|
30
|
-
fastmcp/contrib/bulk_tool_caller/README.md,sha256=5aUUY1TSFKtz1pvTLSDqkUCkGkuqMfMZNsLeaNqEgAc,1960
|
|
31
|
-
fastmcp/contrib/bulk_tool_caller/__init__.py,sha256=xvGSSaUXTQrc31erBoi1Gh7BikgOliETDiYVTP3rLxY,75
|
|
32
|
-
fastmcp/contrib/bulk_tool_caller/bulk_tool_caller.py,sha256=2NcrGS59qvHo1lfbRaT8NSWfCxN66knciLxFvnGwCLY,4165
|
|
33
|
-
fastmcp/contrib/bulk_tool_caller/example.py,sha256=6og_8pCJN_CabworC5R82zPAwwwM-W7HNJLQQSnS3lU,319
|
|
34
|
-
fastmcp/contrib/component_manager/README.md,sha256=sTan1D51jzkPNnCQTxwd5JXGzWVy4DtkUjrUfNH3-F0,4457
|
|
35
|
-
fastmcp/contrib/component_manager/__init__.py,sha256=4bppVrCOSEepKmBRwVWN-ndu5BYAz1Kv2Z8yhjEUmlo,164
|
|
36
|
-
fastmcp/contrib/component_manager/component_manager.py,sha256=4R1FPVYjCr-j7Mn6OcbHH-psl9-JTdd1hgNZHasC52Y,6412
|
|
37
|
-
fastmcp/contrib/component_manager/component_service.py,sha256=WGu3XcZSbHriSjvMfuroNZuT5xWWoYbEiIow8FPQNYg,8712
|
|
38
|
-
fastmcp/contrib/component_manager/example.py,sha256=N16OIHmQuR-LNEv7bkrv2rGdMs862Nc3AKKEPfw-6rU,1587
|
|
39
|
-
fastmcp/contrib/mcp_mixin/README.md,sha256=f6ine6z9kuEx1qKhY9jzrH6sAwj1oWpXcLXGvK0GMVk,5404
|
|
40
|
-
fastmcp/contrib/mcp_mixin/__init__.py,sha256=aw9IQ1ssNjCgws4ZNt8bkdpossAAGVAwwjBpMp9O5ZQ,153
|
|
41
|
-
fastmcp/contrib/mcp_mixin/example.py,sha256=GnunkXmtG5hLLTUsM8aW5ZURU52Z8vI4tNLl-fK7Dg0,1228
|
|
42
|
-
fastmcp/contrib/mcp_mixin/mcp_mixin.py,sha256=Ij009tiJBj1Lciz4abTICA1Il-kz_myr4aevQ4yGTNo,10582
|
|
43
|
-
fastmcp/experimental/sampling/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
|
-
fastmcp/experimental/sampling/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
45
|
-
fastmcp/experimental/sampling/handlers/base.py,sha256=mCPFj9ETc-Ro38R_pzx9rHVM2_EADCecScMkNWd6Tbs,714
|
|
46
|
-
fastmcp/experimental/sampling/handlers/openai.py,sha256=TUmIpao8LFz6BzXFG5v7JOS_CosgX6tCeGRUo1wdKvY,5753
|
|
47
|
-
fastmcp/experimental/server/openapi/README.md,sha256=1Mc1Ur15OxMn-wAPEa1rZIiNNSMdv9sboQ3YpvNpUXM,9886
|
|
48
|
-
fastmcp/experimental/server/openapi/__init__.py,sha256=f1Mc7dkuRRJb_6-3umSHuyuXtvXTzH72t8gw1GBHgZU,772
|
|
49
|
-
fastmcp/experimental/server/openapi/components.py,sha256=jp5xy0xkn14cFRk9FYlp3LpW-j44C0KcXvMQmdWVpB8,13237
|
|
50
|
-
fastmcp/experimental/server/openapi/routing.py,sha256=H_1RMaARucl8bfFT9-JJRDwrAfLJMm86y0giiWldVEc,4031
|
|
51
|
-
fastmcp/experimental/server/openapi/server.py,sha256=WQeUA3v69ZhrzN1-cbrDTC8EsaOXHwDSQT_NPgYrECk,16099
|
|
52
|
-
fastmcp/experimental/utilities/openapi/README.md,sha256=pOXftamuVXxEMlOt-JAfpuvHeRGauC3l46ntD1WzM-A,8604
|
|
53
|
-
fastmcp/experimental/utilities/openapi/__init__.py,sha256=4uba3nOrt8hAv1I91BWkg2hMo3O0VmYlSNG058xwmiA,1677
|
|
54
|
-
fastmcp/experimental/utilities/openapi/director.py,sha256=zoYlIp4KESC8UlfKvooEtyzSO15P8T6YMZp5qCV6PfU,8078
|
|
55
|
-
fastmcp/experimental/utilities/openapi/formatters.py,sha256=1RCd8DwPU8_4uF51pj8Qp3oSZkZmoxL5VUwxBzokAMg,15540
|
|
56
|
-
fastmcp/experimental/utilities/openapi/json_schema_converter.py,sha256=pHGGK13vU3L9Pg8ZqjYZxv8snVc06b6j1BB7R8pZCnY,13089
|
|
57
|
-
fastmcp/experimental/utilities/openapi/models.py,sha256=tgqrHdTbiDfMjiaNVHW5ndbXJ5lg_sajK0S5u9JQL6A,2805
|
|
58
|
-
fastmcp/experimental/utilities/openapi/parser.py,sha256=fAzcwCBvtBpNMN-tpSvoSuqbgojAs_NBZlG--NGpHwQ,34494
|
|
59
|
-
fastmcp/experimental/utilities/openapi/schemas.py,sha256=FE7aSgk3285X1okCh1ILLTxboQ-FCeFLyYZZ_jfejVI,23349
|
|
60
|
-
fastmcp/prompts/__init__.py,sha256=An8uMBUh9Hrb7qqcn_5_Hent7IOeSh7EA2IUVsIrtHc,179
|
|
61
|
-
fastmcp/prompts/prompt.py,sha256=oKd-O7ry2114fMnglqgWHFWAqfGtQr4BPpKiHEt4jKY,14472
|
|
62
|
-
fastmcp/prompts/prompt_manager.py,sha256=5ZyT0blp5owuaN5pz_TQsyH6zUGFoUiVTGfiEnqBuj8,4262
|
|
63
|
-
fastmcp/resources/__init__.py,sha256=y1iAuqx-GIrS1NqIYzKezIDiYyjNEzzHD35epHpMnXE,463
|
|
64
|
-
fastmcp/resources/resource.py,sha256=V3j08yft6pDIjpPTiU-DSGqeuHEVitVpfGoLFCmLoC0,7226
|
|
65
|
-
fastmcp/resources/resource_manager.py,sha256=V-oJje9-3fS__OOCihWGzE7-v3OfwyEfv-YGG1xY69E,13275
|
|
66
|
-
fastmcp/resources/template.py,sha256=vu9InVUKc5CvEOUvlTXsZ8-tpet_-kf8yX-rNrxE4Pw,14802
|
|
67
|
-
fastmcp/resources/types.py,sha256=SiYNLnpXT-mHgNUrzqKUvXYUsY-V3gwJIrYdJfFwDDo,4868
|
|
68
|
-
fastmcp/server/__init__.py,sha256=bMD4aQD4yJqLz7-mudoNsyeV8UgQfRAg3PRwPvwTEds,119
|
|
69
|
-
fastmcp/server/context.py,sha256=Yzo4H2n-RtObDTB9NkLeK73pMYUig553sFDwV3D6BIg,26128
|
|
70
|
-
fastmcp/server/dependencies.py,sha256=so60cBZc4QuiKP2Y4ajR_NPkIF5d_b5wp8U3-ZfZMEQ,3888
|
|
71
|
-
fastmcp/server/elicitation.py,sha256=gmP17CzLQVpGzU00Ks31TWxdS-OLL5wTX_W5xRzs1Cc,8777
|
|
72
|
-
fastmcp/server/http.py,sha256=23jme2iAbvwRQoERCkECdshwp1fnJqdBlhKRy4BKFT0,12067
|
|
73
|
-
fastmcp/server/low_level.py,sha256=b1Sx0_Py0QxeLXSLdDA5PjR9Dd9ANB7KSNkkGSr1AeE,5490
|
|
74
|
-
fastmcp/server/openapi.py,sha256=vm8A8Qy-jzXuxILJs-nPOJLwU2yB0YHDqVpz2HX-AqM,42198
|
|
75
|
-
fastmcp/server/proxy.py,sha256=LoYoBEclvW_UJ6lLuckm2muzW_bOWHCc8oTxyzgTGsA,25769
|
|
76
|
-
fastmcp/server/server.py,sha256=H9XHioDShn4lDdC-pKydcISahlbGvdoZMSqZVaTzSDM,108673
|
|
77
|
-
fastmcp/server/auth/__init__.py,sha256=GwoyosVxuWCPzFHaCnj6iFp9fulnp124G2gQfsnzcgc,695
|
|
78
|
-
fastmcp/server/auth/auth.py,sha256=b6QM-CEErFoQJgQFzgHDZTOAN33zTLmxEjeE83Crrw8,13628
|
|
79
|
-
fastmcp/server/auth/jwt_issuer.py,sha256=Ft1KdLrQn3UQT8bXmPd82OkxDEpqw7zr3TQr5vEIm5Y,8680
|
|
80
|
-
fastmcp/server/auth/oauth_proxy.py,sha256=CAM5GKOGlVzRMqqdi9oXtOJO2_UF4XNCxMXXGCm5gDo,83732
|
|
81
|
-
fastmcp/server/auth/oidc_proxy.py,sha256=Cyqh4nqJ4KQBguDphYJfP9Q_NGqHsDq0dT5Mz-UTN4U,13283
|
|
82
|
-
fastmcp/server/auth/redirect_validation.py,sha256=Jlhela9xpTbw4aWnQ04A5Z-TW0HYOC3f9BMsq3NXx1Q,2000
|
|
83
|
-
fastmcp/server/auth/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
84
|
-
fastmcp/server/auth/providers/auth0.py,sha256=-KTTXIWuQE1juSUErhFKckEWO5qxZknRMCNmTV939w4,6672
|
|
85
|
-
fastmcp/server/auth/providers/aws.py,sha256=B75Y_7ZpgGVgXHV571bNHNz5B69bmEYNZ27ONOK5vsw,9635
|
|
86
|
-
fastmcp/server/auth/providers/azure.py,sha256=38XZgBONhJzZaMW9RTrX6JPH6I_B2INhNeWAhVnmEkM,11660
|
|
87
|
-
fastmcp/server/auth/providers/bearer.py,sha256=iu4pUj7TF5pT1wPuAGzDuM6lt5WtzenBN3c0otUleQY,923
|
|
88
|
-
fastmcp/server/auth/providers/descope.py,sha256=mbqToTMLVR5-ZTUECv9jhVeT3TNjrXStL-D_zCE2Y1U,6348
|
|
89
|
-
fastmcp/server/auth/providers/github.py,sha256=HjRJRlse3haN6r5JGDXAe8vJv9yJiVN5FuyszFv5gD8,11202
|
|
90
|
-
fastmcp/server/auth/providers/google.py,sha256=Xh485rlpIWNvhoiKhvj3YoEDkhJEZ8cuNd_XRn7_ofc,12417
|
|
91
|
-
fastmcp/server/auth/providers/in_memory.py,sha256=CFCfYWMIPUxHNF5Liqud6ksedbykKV-RILWZqTxh3MY,14245
|
|
92
|
-
fastmcp/server/auth/providers/introspection.py,sha256=Izp8vEJG8Kyvu5Z-GWIvpKSeEZ2MYpw635MeqkPfb8w,10733
|
|
93
|
-
fastmcp/server/auth/providers/jwt.py,sha256=KzbvPjOKIE6hDvfQ_BdjYMT2CrNcErNOGHF8DvmfQF4,19666
|
|
94
|
-
fastmcp/server/auth/providers/scalekit.py,sha256=_CEdJ5S9eT24gnNlVYzRMhNAjrkoysVOAPDoyAz8Pxw,6628
|
|
95
|
-
fastmcp/server/auth/providers/supabase.py,sha256=6fPSFGxOUdA4E9zCB9AqyZpZTDNF3yHF5M0lQRipYLc,6478
|
|
96
|
-
fastmcp/server/auth/providers/workos.py,sha256=SLoftlPeKfquw9QnMsuhMdcw36iAYwSt9_4NKeSsvWw,16020
|
|
97
|
-
fastmcp/server/middleware/__init__.py,sha256=vh5C9ubN6q-y5QND32P4mQ4zDT89C7XYK39yqhELNAk,155
|
|
98
|
-
fastmcp/server/middleware/caching.py,sha256=L5cKT4_BrCvjQXIN4pMnrGNR3QAUXDpmk5h-Gl9qk6U,18279
|
|
99
|
-
fastmcp/server/middleware/error_handling.py,sha256=4PGbF39Cpa-h-WXwxOhPLvEM9_iAJ8IKbMTPnXbEyd8,7736
|
|
100
|
-
fastmcp/server/middleware/logging.py,sha256=oxFeMH5E5xs2i_Dbb9atmwbfG8Sohnlh8qgFB_L92uI,9411
|
|
101
|
-
fastmcp/server/middleware/middleware.py,sha256=USnE3fsQJnDh7HdKAj-QHTOoQ-QuF_zTnbhVQVqu0tU,6611
|
|
102
|
-
fastmcp/server/middleware/rate_limiting.py,sha256=MwhMOhgsIhZjYwEQB8H8961hohV5564JlTwwYy_9ctU,7915
|
|
103
|
-
fastmcp/server/middleware/timing.py,sha256=lL_xc-ErLD5lplfvd5-HIyWEbZhgNBYkcQ74KFXAMkA,5591
|
|
104
|
-
fastmcp/server/sampling/handler.py,sha256=yjLzvxlGllE-EY4bc6djsijEmwMT24PCpV6vJl-sPcI,580
|
|
105
|
-
fastmcp/tools/__init__.py,sha256=vzqb-Y7Kf0d5T0aOsld-O-FA8kD7-4uFExChewFHEzY,201
|
|
106
|
-
fastmcp/tools/tool.py,sha256=9zUikGGuxYON-IcxNmJRerId8Iy_EQf2gXLnmq1f2qc,20099
|
|
107
|
-
fastmcp/tools/tool_manager.py,sha256=soE35w8QJPs1MX1PJ8DGTzOOLLCIhTLxS9mtHRD9HAs,5811
|
|
108
|
-
fastmcp/tools/tool_transform.py,sha256=De_E_adWwBdBcmULpRDroiPrdGEbC4fFwXqcKxRVTpU,38462
|
|
109
|
-
fastmcp/utilities/__init__.py,sha256=-imJ8S-rXmbXMWeDamldP-dHDqAPg_wwmPVz-LNX14E,31
|
|
110
|
-
fastmcp/utilities/auth.py,sha256=ZVHkNb4YBpLE1EmmFyhvFB2qfWDZdEYNH9TRI9jylOE,1140
|
|
111
|
-
fastmcp/utilities/cli.py,sha256=7MaWUZVXS-_e1efGDcM3u7vjmOlQ61ZoMfTdvcnz6Vc,10152
|
|
112
|
-
fastmcp/utilities/components.py,sha256=lYB58QVm97szKjZ5kBs0aUKTQeIIEREte7WX5IHK5TU,5991
|
|
113
|
-
fastmcp/utilities/exceptions.py,sha256=7Z9j5IzM5rT27BC1Mcn8tkS-bjqCYqMKwb2MMTaxJYU,1350
|
|
114
|
-
fastmcp/utilities/http.py,sha256=1ns1ymBS-WSxbZjGP6JYjSO52Wa_ls4j4WbnXiupoa4,245
|
|
115
|
-
fastmcp/utilities/inspect.py,sha256=K_WGvNbhO9bEGqi_V_N9uRLOH-_eM5UnKBnEhLTvPrc,18042
|
|
116
|
-
fastmcp/utilities/json_schema.py,sha256=jR-J_6IKVYe3VCwgrDLwiKJOGTdekvgbQJWXnEKJLHs,8824
|
|
117
|
-
fastmcp/utilities/json_schema_type.py,sha256=SX-qEZXC-sgUflOuIi3oi6jeCvIky3QS6m3Riihq6Xc,22273
|
|
118
|
-
fastmcp/utilities/logging.py,sha256=EIWMbCgFM5nWeiOpvkncrJVpe3CBI4Nn9rnw7cUpiBU,7185
|
|
119
|
-
fastmcp/utilities/mcp_config.py,sha256=qATTXMGiYET-7PflOixQOgiw3aOizX-RlloRjAo7nwI,1796
|
|
120
|
-
fastmcp/utilities/openapi.py,sha256=mfkY2XfWAmAOlKexArlrmDdD0Tkdqcn4TshsATaxB_o,63304
|
|
121
|
-
fastmcp/utilities/tests.py,sha256=JJQ1MqmnOG2EyRwMjHhVFgRg39Rcz4tCU4pWm7L0wxM,8934
|
|
122
|
-
fastmcp/utilities/types.py,sha256=ZOgLVKkBwnB7npl6kk6zoS2sK17JWDbfRTzLUzXsrWU,14755
|
|
123
|
-
fastmcp/utilities/ui.py,sha256=uk149Zki6ft1SZOolzRFwsiIC20ERGzjWKbWCYvPm5s,11421
|
|
124
|
-
fastmcp/utilities/mcp_server_config/__init__.py,sha256=qbfd0c6aBpi0_SVgwt4IQCQ9siqqxmr9PWSYGiPDJqE,791
|
|
125
|
-
fastmcp/utilities/mcp_server_config/v1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
|
-
fastmcp/utilities/mcp_server_config/v1/mcp_server_config.py,sha256=65ZOxYEEVDg1lT_T99vTT9JZOhgQblNXYXbwgCYNPhc,15437
|
|
127
|
-
fastmcp/utilities/mcp_server_config/v1/schema.json,sha256=ymDNFOWzcpnhIMeJmVPTw9b-NtHoHoru8Mc0WlSVxUY,8602
|
|
128
|
-
fastmcp/utilities/mcp_server_config/v1/environments/__init__.py,sha256=Tkv0dmJ6tKKotOBo-tho09QVdvEjy37iBsvBbEwH0EA,256
|
|
129
|
-
fastmcp/utilities/mcp_server_config/v1/environments/base.py,sha256=FkrUsESEdW5akyn_FeR4tQB6Vlj7dO9VFcCj0YLCghQ,845
|
|
130
|
-
fastmcp/utilities/mcp_server_config/v1/environments/uv.py,sha256=DPVAXM5JDTN89wOSQsFnww4khRfNphXY2yzVeiKicNg,9755
|
|
131
|
-
fastmcp/utilities/mcp_server_config/v1/sources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
132
|
-
fastmcp/utilities/mcp_server_config/v1/sources/base.py,sha256=KWunc5peDLFdSdLX8l3UI9SNxtN-KNq2FOXAZ7XD62c,980
|
|
133
|
-
fastmcp/utilities/mcp_server_config/v1/sources/filesystem.py,sha256=eFX47XNXz2oKHW8MZvx60dqyHkBxdg2FMOrHcyAS28g,8106
|
|
134
|
-
fastmcp-2.13.0rc2.dist-info/METADATA,sha256=VtwiJ_jggV4vS-rzVX59TKswvO1Lid7JSa0a_JNIe0Y,20050
|
|
135
|
-
fastmcp-2.13.0rc2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
136
|
-
fastmcp-2.13.0rc2.dist-info/entry_points.txt,sha256=ff8bMtKX1JvXyurMibAacMSKbJEPmac9ffAKU9mLnM8,44
|
|
137
|
-
fastmcp-2.13.0rc2.dist-info/licenses/LICENSE,sha256=QwcOLU5TJoTeUhuIXzhdCEEDDvorGiC6-3YTOl4TecE,11356
|
|
138
|
-
fastmcp-2.13.0rc2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|