charlesscottwilliams commited on
Commit
e0bd106
·
verified ·
1 Parent(s): a4f5a2e

signed commit

Browse files
Files changed (3) hide show
  1. pyproject.toml +3 -3
  2. requirements.txt +219 -4
  3. uv.lock +46 -12
pyproject.toml CHANGED
@@ -6,8 +6,8 @@ readme = "README.md"
6
  requires-python = ">=3.11"
7
  dependencies = [
8
  "fastmcp>=2.7.0",
9
- "gradio>=5.30.0",
10
  "mcp>=1.9.3",
11
- "python-dotenv>=1.1.0",
12
- "smolagents>=1.17.0",
13
  ]
 
 
6
  requires-python = ">=3.11"
7
  dependencies = [
8
  "fastmcp>=2.7.0",
9
+ "gradio[mcp]>=5.30.0",
10
  "mcp>=1.9.3",
11
+ "smolagents[mcp]>=1.17.0",
 
12
  ]
13
+
requirements.txt CHANGED
@@ -1,4 +1,219 @@
1
- gradio
2
- smolagents
3
- fastmcp
4
- mcp
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This file was autogenerated by uv via the following command:
2
+ # uv pip compile pyproject.toml -o requirements.txt
3
+ aiofiles==24.1.0
4
+ # via gradio
5
+ annotated-types==0.7.0
6
+ # via pydantic
7
+ anyio==4.9.0
8
+ # via
9
+ # gradio
10
+ # httpx
11
+ # mcp
12
+ # sse-starlette
13
+ # starlette
14
+ authlib==1.6.0
15
+ # via fastmcp
16
+ certifi==2025.4.26
17
+ # via
18
+ # httpcore
19
+ # httpx
20
+ # requests
21
+ cffi==1.17.1
22
+ # via cryptography
23
+ charset-normalizer==3.4.2
24
+ # via requests
25
+ click==8.2.1
26
+ # via
27
+ # typer
28
+ # uvicorn
29
+ cryptography==45.0.3
30
+ # via authlib
31
+ exceptiongroup==1.3.0
32
+ # via fastmcp
33
+ fastapi==0.115.12
34
+ # via gradio
35
+ fastmcp==2.7.0
36
+ # via mcp-client (pyproject.toml)
37
+ ffmpy==0.6.0
38
+ # via gradio
39
+ filelock==3.18.0
40
+ # via huggingface-hub
41
+ fsspec==2025.5.1
42
+ # via
43
+ # gradio-client
44
+ # huggingface-hub
45
+ gradio==5.30.0
46
+ # via mcp-client (pyproject.toml)
47
+ gradio-client==1.10.1
48
+ # via gradio
49
+ groovy==0.1.2
50
+ # via gradio
51
+ h11==0.16.0
52
+ # via
53
+ # httpcore
54
+ # uvicorn
55
+ hf-xet==1.1.3
56
+ # via huggingface-hub
57
+ httpcore==1.0.9
58
+ # via httpx
59
+ httpx==0.28.1
60
+ # via
61
+ # fastmcp
62
+ # gradio
63
+ # gradio-client
64
+ # mcp
65
+ # safehttpx
66
+ httpx-sse==0.4.0
67
+ # via mcp
68
+ huggingface-hub==0.32.4
69
+ # via
70
+ # gradio
71
+ # gradio-client
72
+ # smolagents
73
+ idna==3.10
74
+ # via
75
+ # anyio
76
+ # httpx
77
+ # requests
78
+ jinja2==3.1.6
79
+ # via
80
+ # gradio
81
+ # smolagents
82
+ jsonref==1.1.0
83
+ # via mcpadapt
84
+ markdown-it-py==3.0.0
85
+ # via rich
86
+ markupsafe==3.0.2
87
+ # via
88
+ # gradio
89
+ # jinja2
90
+ mcp==1.9.3
91
+ # via
92
+ # mcp-client (pyproject.toml)
93
+ # fastmcp
94
+ # gradio
95
+ # mcpadapt
96
+ # smolagents
97
+ mcpadapt==0.1.9
98
+ # via smolagents
99
+ mdurl==0.1.2
100
+ # via markdown-it-py
101
+ numpy==2.3.0
102
+ # via
103
+ # gradio
104
+ # pandas
105
+ openapi-pydantic==0.5.1
106
+ # via fastmcp
107
+ orjson==3.10.18
108
+ # via gradio
109
+ packaging==25.0
110
+ # via
111
+ # gradio
112
+ # gradio-client
113
+ # huggingface-hub
114
+ pandas==2.3.0
115
+ # via gradio
116
+ pillow==11.2.1
117
+ # via
118
+ # gradio
119
+ # smolagents
120
+ pycparser==2.22
121
+ # via cffi
122
+ pydantic==2.11.5
123
+ # via
124
+ # fastapi
125
+ # gradio
126
+ # mcp
127
+ # mcpadapt
128
+ # openapi-pydantic
129
+ # pydantic-settings
130
+ pydantic-core==2.33.2
131
+ # via pydantic
132
+ pydantic-settings==2.9.1
133
+ # via mcp
134
+ pydub==0.25.1
135
+ # via gradio
136
+ pygments==2.19.1
137
+ # via rich
138
+ python-dateutil==2.9.0.post0
139
+ # via pandas
140
+ python-dotenv==1.1.0
141
+ # via
142
+ # fastmcp
143
+ # mcpadapt
144
+ # pydantic-settings
145
+ # smolagents
146
+ python-multipart==0.0.20
147
+ # via
148
+ # gradio
149
+ # mcp
150
+ pytz==2025.2
151
+ # via pandas
152
+ pyyaml==6.0.2
153
+ # via
154
+ # gradio
155
+ # huggingface-hub
156
+ requests==2.32.3
157
+ # via
158
+ # huggingface-hub
159
+ # smolagents
160
+ rich==14.0.0
161
+ # via
162
+ # fastmcp
163
+ # smolagents
164
+ # typer
165
+ ruff==0.11.13
166
+ # via gradio
167
+ safehttpx==0.1.6
168
+ # via gradio
169
+ semantic-version==2.10.0
170
+ # via gradio
171
+ shellingham==1.5.4
172
+ # via typer
173
+ six==1.17.0
174
+ # via python-dateutil
175
+ smolagents==1.17.0
176
+ # via mcp-client (pyproject.toml)
177
+ sniffio==1.3.1
178
+ # via anyio
179
+ sse-starlette==2.3.6
180
+ # via mcp
181
+ starlette==0.46.2
182
+ # via
183
+ # fastapi
184
+ # gradio
185
+ # mcp
186
+ tomlkit==0.13.3
187
+ # via gradio
188
+ tqdm==4.67.1
189
+ # via huggingface-hub
190
+ typer==0.16.0
191
+ # via
192
+ # fastmcp
193
+ # gradio
194
+ typing-extensions==4.14.0
195
+ # via
196
+ # anyio
197
+ # exceptiongroup
198
+ # fastapi
199
+ # gradio
200
+ # gradio-client
201
+ # huggingface-hub
202
+ # pydantic
203
+ # pydantic-core
204
+ # typer
205
+ # typing-inspection
206
+ typing-inspection==0.4.1
207
+ # via
208
+ # pydantic
209
+ # pydantic-settings
210
+ tzdata==2025.2
211
+ # via pandas
212
+ urllib3==2.4.0
213
+ # via requests
214
+ uvicorn==0.34.3
215
+ # via
216
+ # gradio
217
+ # mcp
218
+ websockets==15.0.1
219
+ # via gradio-client
uv.lock CHANGED
@@ -328,7 +328,7 @@ wheels = [
328
 
329
  [[package]]
330
  name = "gradio"
331
- version = "5.33.0"
332
  source = { registry = "https://pypi.org/simple" }
333
  dependencies = [
334
  { name = "aiofiles" },
@@ -361,14 +361,20 @@ dependencies = [
361
  { name = "urllib3", marker = "sys_platform == 'emscripten'" },
362
  { name = "uvicorn", marker = "sys_platform != 'emscripten'" },
363
  ]
364
- sdist = { url = "https://files.pythonhosted.org/packages/b0/97/908eb543fbce7c69250d6fbe87b6ccf4ce397d31bceb360b40316357c68c/gradio-5.33.0.tar.gz", hash = "sha256:0cba3a1596fda6cb0048dd7ddc2d57e6238a047c0df9dee5a4a0e5c2a74e8e50", size = 64888401 }
365
  wheels = [
366
- { url = "https://files.pythonhosted.org/packages/4f/c3/c9b09b8d7efd63d83a9c8d9c53b02e1b77238e14305a7ee561e0a8990465/gradio-5.33.0-py3-none-any.whl", hash = "sha256:165e412e1510a22471901744722f99a52cb56465a7e9609f1e400cac9999e9d8", size = 54208887 },
 
 
 
 
 
 
367
  ]
368
 
369
  [[package]]
370
  name = "gradio-client"
371
- version = "1.10.2"
372
  source = { registry = "https://pypi.org/simple" }
373
  dependencies = [
374
  { name = "fsspec" },
@@ -378,9 +384,9 @@ dependencies = [
378
  { name = "typing-extensions" },
379
  { name = "websockets" },
380
  ]
381
- sdist = { url = "https://files.pythonhosted.org/packages/d2/86/6684afe8691b024200fdc8983924f04b5f76bb401b9c700e5752a23595a0/gradio_client-1.10.2.tar.gz", hash = "sha256:bf71ba95714784fa77ca0cfb20189ad91c55e563c2dc71722d023a97f1815d7f", size = 321294 }
382
  wheels = [
383
- { url = "https://files.pythonhosted.org/packages/9b/1b/b372308c263379ae3ebc440512432979458330113bdee26cef86c89bf48e/gradio_client-1.10.2-py3-none-any.whl", hash = "sha256:6de67b6224123d264c7887caa0586b2a9e2c369ec32ca38927cf8a841694edcd", size = 323311 },
384
  ]
385
 
386
  [[package]]
@@ -493,6 +499,15 @@ wheels = [
493
  { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899 },
494
  ]
495
 
 
 
 
 
 
 
 
 
 
496
  [[package]]
497
  name = "markdown-it-py"
498
  version = "3.0.0"
@@ -579,19 +594,32 @@ version = "0.1.0"
579
  source = { virtual = "." }
580
  dependencies = [
581
  { name = "fastmcp" },
582
- { name = "gradio" },
583
  { name = "mcp" },
584
- { name = "python-dotenv" },
585
- { name = "smolagents" },
586
  ]
587
 
588
  [package.metadata]
589
  requires-dist = [
590
  { name = "fastmcp", specifier = ">=2.7.0" },
591
- { name = "gradio", specifier = ">=5.30.0" },
592
  { name = "mcp", specifier = ">=1.9.3" },
593
- { name = "python-dotenv", specifier = ">=1.1.0" },
594
- { name = "smolagents", specifier = ">=1.17.0" },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
595
  ]
596
 
597
  [[package]]
@@ -1139,6 +1167,12 @@ wheels = [
1139
  { url = "https://files.pythonhosted.org/packages/c0/c0/43c4cd2a98943992dbee705cbcfc57d6da89e4d75860bb379dc1e2fa1f33/smolagents-1.17.0-py3-none-any.whl", hash = "sha256:b6b7853d454c24c949cb306858523e97792310b9ab422a61cba5ccbab48f01c1", size = 133973 },
1140
  ]
1141
 
 
 
 
 
 
 
1142
  [[package]]
1143
  name = "sniffio"
1144
  version = "1.3.1"
 
328
 
329
  [[package]]
330
  name = "gradio"
331
+ version = "5.30.0"
332
  source = { registry = "https://pypi.org/simple" }
333
  dependencies = [
334
  { name = "aiofiles" },
 
361
  { name = "urllib3", marker = "sys_platform == 'emscripten'" },
362
  { name = "uvicorn", marker = "sys_platform != 'emscripten'" },
363
  ]
364
+ sdist = { url = "https://files.pythonhosted.org/packages/19/f7/c47bd11f6e1e9e1692ee0c76b1fbf85df576541aa01f5aa253ba58727ddf/gradio-5.30.0.tar.gz", hash = "sha256:83d2dfaf5ecb2911e1aa61ccbee4aa62b7bde112396fb107237d5d8134b6131b", size = 64740431 }
365
  wheels = [
366
+ { url = "https://files.pythonhosted.org/packages/58/9e/39b1e0a0c0eaa8bd7ef28274e8ac639575cd3a7290500e51af68534f2f6f/gradio-5.30.0-py3-none-any.whl", hash = "sha256:47508c4a69789f9433a1d95c5ffb5893570573431d05754394e2ffeaa6fbc2d3", size = 54161002 },
367
+ ]
368
+
369
+ [package.optional-dependencies]
370
+ mcp = [
371
+ { name = "mcp" },
372
+ { name = "pydantic", marker = "sys_platform != 'emscripten'" },
373
  ]
374
 
375
  [[package]]
376
  name = "gradio-client"
377
+ version = "1.10.1"
378
  source = { registry = "https://pypi.org/simple" }
379
  dependencies = [
380
  { name = "fsspec" },
 
384
  { name = "typing-extensions" },
385
  { name = "websockets" },
386
  ]
387
+ sdist = { url = "https://files.pythonhosted.org/packages/b9/5e/f0e513041613aacc916f7d19eb98f6d209adf278921fd967750b0803afb8/gradio_client-1.10.1.tar.gz", hash = "sha256:550662eae8dc0d06d44cb8d42be74f214db1e793ad4d789d7b7ecb42e82ca045", size = 321147 }
388
  wheels = [
389
+ { url = "https://files.pythonhosted.org/packages/55/6f/03eb8e0e0ec80eced5ed35a63376dabfc7391b1538502f8e85e9dc5bab02/gradio_client-1.10.1-py3-none-any.whl", hash = "sha256:fcff53f6aad3dfa9dd082adedb94256172d6b20666b1ef66480d82023e1907db", size = 323141 },
390
  ]
391
 
392
  [[package]]
 
499
  { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899 },
500
  ]
501
 
502
+ [[package]]
503
+ name = "jsonref"
504
+ version = "1.1.0"
505
+ source = { registry = "https://pypi.org/simple" }
506
+ sdist = { url = "https://files.pythonhosted.org/packages/aa/0d/c1f3277e90ccdb50d33ed5ba1ec5b3f0a242ed8c1b1a85d3afeb68464dca/jsonref-1.1.0.tar.gz", hash = "sha256:32fe8e1d85af0fdefbebce950af85590b22b60f9e95443176adbde4e1ecea552", size = 8814 }
507
+ wheels = [
508
+ { url = "https://files.pythonhosted.org/packages/0c/ec/e1db9922bceb168197a558a2b8c03a7963f1afe93517ddd3cf99f202f996/jsonref-1.1.0-py3-none-any.whl", hash = "sha256:590dc7773df6c21cbf948b5dac07a72a251db28b0238ceecce0a2abfa8ec30a9", size = 9425 },
509
+ ]
510
+
511
  [[package]]
512
  name = "markdown-it-py"
513
  version = "3.0.0"
 
594
  source = { virtual = "." }
595
  dependencies = [
596
  { name = "fastmcp" },
597
+ { name = "gradio", extra = ["mcp"] },
598
  { name = "mcp" },
599
+ { name = "smolagents", extra = ["mcp"] },
 
600
  ]
601
 
602
  [package.metadata]
603
  requires-dist = [
604
  { name = "fastmcp", specifier = ">=2.7.0" },
605
+ { name = "gradio", extras = ["mcp"], specifier = ">=5.30.0" },
606
  { name = "mcp", specifier = ">=1.9.3" },
607
+ { name = "smolagents", extras = ["mcp"], specifier = ">=1.17.0" },
608
+ ]
609
+
610
+ [[package]]
611
+ name = "mcpadapt"
612
+ version = "0.1.9"
613
+ source = { registry = "https://pypi.org/simple" }
614
+ dependencies = [
615
+ { name = "jsonref" },
616
+ { name = "mcp" },
617
+ { name = "pydantic" },
618
+ { name = "python-dotenv" },
619
+ ]
620
+ sdist = { url = "https://files.pythonhosted.org/packages/9e/68/85c0946d567088d8d55f1c30cb942bcfec2585941a3f45b790e423b994c8/mcpadapt-0.1.9.tar.gz", hash = "sha256:03e601c4c083f3f4eb178e6a6bcd157bcb45e25c140ea0895567bab346b67645", size = 3540887 }
621
+ wheels = [
622
+ { url = "https://files.pythonhosted.org/packages/83/78/0310684763e5753a3a8128dab6c87ba1e20dd907b696680592bebebc84b6/mcpadapt-0.1.9-py3-none-any.whl", hash = "sha256:9f2a6ad1155efdf1a43c11e8449ae9258295c4e140c3c6ff672983a8ac8bde33", size = 17469 },
623
  ]
624
 
625
  [[package]]
 
1167
  { url = "https://files.pythonhosted.org/packages/c0/c0/43c4cd2a98943992dbee705cbcfc57d6da89e4d75860bb379dc1e2fa1f33/smolagents-1.17.0-py3-none-any.whl", hash = "sha256:b6b7853d454c24c949cb306858523e97792310b9ab422a61cba5ccbab48f01c1", size = 133973 },
1168
  ]
1169
 
1170
+ [package.optional-dependencies]
1171
+ mcp = [
1172
+ { name = "mcp" },
1173
+ { name = "mcpadapt" },
1174
+ ]
1175
+
1176
  [[package]]
1177
  name = "sniffio"
1178
  version = "1.3.1"