fiftyone-mcp-server 0.1.1__tar.gz → 0.1.3__tar.gz

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.
@@ -0,0 +1,264 @@
1
+ Metadata-Version: 2.4
2
+ Name: fiftyone-mcp-server
3
+ Version: 0.1.3
4
+ Summary: MCP server exposing FiftyOne dataset analysis tools
5
+ License: MIT
6
+ Keywords: mcp,fiftyone,computer-vision,ai,datasets,model-context-protocol
7
+ Author: Adonai Vera
8
+ Author-email: adonai.vera@gmail.com
9
+ Requires-Python: >=3.10,<3.14
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: Intended Audience :: Science/Research
13
+ Classifier: License :: OSI Approved :: MIT License
14
+ Classifier: Operating System :: OS Independent
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Programming Language :: Python :: 3.9
21
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
22
+ Requires-Dist: exceptiongroup (>=1.0) ; python_version < "3.11"
23
+ Requires-Dist: fiftyone (>=1.0)
24
+ Requires-Dist: mcp (>=0.9.0)
25
+ Requires-Dist: torch (>=2.0)
26
+ Requires-Dist: torchvision (>=0.15)
27
+ Requires-Dist: ultralytics (>=8.0)
28
+ Project-URL: Documentation, https://github.com/voxel51/fiftyone-mcp-server#readme
29
+ Project-URL: Homepage, https://github.com/voxel51/fiftyone-mcp-server
30
+ Project-URL: Repository, https://github.com/voxel51/fiftyone-mcp-server
31
+ Description-Content-Type: text/markdown
32
+
33
+ # FiftyOne MCP Server
34
+
35
+ <!-- mcp-name: io.github.voxel51/fiftyone-mcp-server -->
36
+
37
+ <div align="center">
38
+ <p align="center">
39
+
40
+ <!-- prettier-ignore -->
41
+ <img src="https://user-images.githubusercontent.com/25985824/106288517-2422e000-6216-11eb-871d-26ad2e7b1e59.png" height="55px"> &nbsp;
42
+ <img src="https://user-images.githubusercontent.com/25985824/106288518-24bb7680-6216-11eb-8f10-60052c519586.png" height="50px">
43
+
44
+ </p>
45
+
46
+ **Control FiftyOne datasets through AI assistants using the Model Context Protocol**
47
+
48
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
49
+ [![PyPI](https://img.shields.io/pypi/v/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
50
+ [![Python](https://img.shields.io/pypi/pyversions/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
51
+ [![Discord](https://img.shields.io/badge/Discord-FiftyOne%20Community-7289DA.svg)](https://discord.gg/fiftyone-community)
52
+
53
+ [Documentation](https://docs.voxel51.com) · [FiftyOne Skills](https://github.com/voxel51/fiftyone-skills) · [FiftyOne Plugins](https://github.com/voxel51/fiftyone-plugins) · [Discord](https://discord.gg/fiftyone-community)
54
+
55
+ </div>
56
+
57
+ ## What is the FiftyOne MCP Server?
58
+
59
+ Enable Agents to explore datasets, execute operators, and build computer vision workflows through natural language. This server exposes FiftyOne's operator framework (80+ built-in operators) through 16 MCP tools.
60
+
61
+ ```
62
+ "List all my datasets"
63
+ "Load quickstart dataset and show summary"
64
+ "Find similar images in my dataset"
65
+ ```
66
+
67
+ The server starts with 50 built-in operators. Install plugins to expand functionality - the AI can discover and install plugins automatically when needed (brain, zoo, annotation, evaluation, and more).
68
+
69
+ ## Available Tools
70
+
71
+ | Category | Tools | Description |
72
+ | ------------------------- | ----- | -------------------------------------------- |
73
+ | 📊 **Dataset Management** | 3 | List, load, and summarize datasets |
74
+ | ⚡ **Operator System** | 5 | Execute any FiftyOne operator dynamically |
75
+ | 🔌 **Plugin Management** | 5 | Discover and install FiftyOne plugins |
76
+ | 🖥️ **Session Management** | 3 | Control FiftyOne App for delegated execution |
77
+
78
+ **Design Philosophy:** Minimal tool count (16 tools), maximum flexibility (full operator & plugin ecosystem).
79
+
80
+ ## Quick Start
81
+
82
+ ### Step 1: Install the MCP Server
83
+
84
+ ```bash
85
+ pip install fiftyone-mcp-server
86
+ ```
87
+
88
+ > **⚠️ Important:** Make sure to use the same Python environment where you installed the MCP server when configuring your AI tool. If you installed it in a virtual environment or conda environment, you must activate that environment or specify the full path to the executable.
89
+
90
+ ### Step 2: Configure Your AI Tool
91
+
92
+ <details>
93
+ <summary><b>Claude Code</b> (Recommended)</summary>
94
+
95
+ ```bash
96
+ claude mcp add fiftyone -- fiftyone-mcp
97
+ ```
98
+
99
+ </details>
100
+
101
+ <details>
102
+ <summary><b>Claude Desktop</b></summary>
103
+
104
+ Edit `~/Library/Application Support/Claude/claude_desktop_config.json`:
105
+
106
+ ```json
107
+ {
108
+ "mcpServers": {
109
+ "fiftyone": {
110
+ "command": "fiftyone-mcp"
111
+ }
112
+ }
113
+ }
114
+ ```
115
+
116
+ </details>
117
+
118
+ <details>
119
+ <summary><b>Cursor</b></summary>
120
+
121
+ [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](cursor://anysphere.cursor-deeplink/mcp/install?name=fiftyone&config=eyJjb21tYW5kIjoiZmlmdHlvbmUtbWNwIn0)
122
+
123
+ Add to `~/.cursor/mcp.json`:
124
+
125
+ ```json
126
+ {
127
+ "mcpServers": {
128
+ "fiftyone": {
129
+ "command": "fiftyone-mcp"
130
+ }
131
+ }
132
+ }
133
+ ```
134
+
135
+ </details>
136
+
137
+ <details>
138
+ <summary><b>VSCode</b></summary>
139
+
140
+ [![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fiftyone&config=%7B%22command%22%3A%22fiftyone-mcp%22%7D)
141
+
142
+ Add to `.vscode/mcp.json`:
143
+
144
+ ```json
145
+ {
146
+ "servers": {
147
+ "fiftyone": {
148
+ "command": "fiftyone-mcp"
149
+ }
150
+ }
151
+ }
152
+ ```
153
+
154
+ </details>
155
+
156
+ <details>
157
+ <summary><b>ChatGPT Desktop</b></summary>
158
+
159
+ Edit `~/Library/Application Support/ChatGPT/config.json`:
160
+
161
+ ```json
162
+ {
163
+ "mcpServers": {
164
+ "fiftyone": {
165
+ "command": "fiftyone-mcp"
166
+ }
167
+ }
168
+ }
169
+ ```
170
+
171
+ </details>
172
+
173
+ <details>
174
+ <summary><b>uvx (No Install Needed)</b></summary>
175
+
176
+ If you have [uv](https://github.com/astral-sh/uv) installed:
177
+
178
+ ```json
179
+ {
180
+ "mcpServers": {
181
+ "fiftyone": {
182
+ "command": "uvx",
183
+ "args": ["fiftyone-mcp-server"]
184
+ }
185
+ }
186
+ }
187
+ ```
188
+
189
+ This downloads and runs the latest version automatically.
190
+
191
+ </details>
192
+
193
+ ### Step 3: Use It
194
+
195
+ ```
196
+ "List all my datasets"
197
+ "Load quickstart dataset and show summary"
198
+ "What operators are available for managing samples?"
199
+ "Set context to my dataset, then tag high-confidence samples"
200
+ "What plugins are available? Install the brain plugin"
201
+ "Find similar images in my dataset"
202
+ ```
203
+
204
+ Claude will automatically discover operators and execute the appropriate tools.
205
+
206
+ ## Contributing
207
+
208
+ We welcome contributions! Here's how to set up a local development environment:
209
+
210
+ 1. **Clone** the repository
211
+
212
+ ```bash
213
+ git clone https://github.com/voxel51/fiftyone-mcp-server.git
214
+ cd fiftyone-mcp-server
215
+ ```
216
+
217
+ 2. **Install** dependencies
218
+
219
+ ```bash
220
+ poetry install
221
+ ```
222
+
223
+ 3. **Run** the server locally
224
+
225
+ ```bash
226
+ poetry run fiftyone-mcp
227
+ ```
228
+
229
+ 4. **Test** your changes
230
+
231
+ ```bash
232
+ poetry run pytest
233
+ poetry run black -l 79 src/
234
+ npx @modelcontextprotocol/inspector poetry run fiftyone-mcp
235
+ ```
236
+
237
+ 5. **Submit** a Pull Request
238
+
239
+ ## Resources
240
+
241
+ | Resource | Description |
242
+ | --------------------------------------------------------------- | ---------------------------------- |
243
+ | [FiftyOne Docs](https://docs.voxel51.com) | Official documentation |
244
+ | [FiftyOne Skills](https://github.com/voxel51/fiftyone-skills) | Expert workflows for AI assistants |
245
+ | [FiftyOne Plugins](https://github.com/voxel51/fiftyone-plugins) | Official plugin collection |
246
+ | [Model Context Protocol](https://modelcontextprotocol.io) | MCP specification |
247
+ | [PyPI Package](https://pypi.org/project/fiftyone-mcp-server/) | MCP server on PyPI |
248
+ | [Discord Community](https://discord.gg/fiftyone-community) | Get help and share ideas |
249
+
250
+ ## Community
251
+
252
+ Join the FiftyOne community to get help, share your ideas, and connect with other users:
253
+
254
+ - **Discord**: [FiftyOne Community](https://discord.gg/fiftyone-community)
255
+ - **GitHub Issues**: [Report bugs or request features](https://github.com/voxel51/fiftyone-mcp-server/issues)
256
+
257
+ ---
258
+
259
+ <div align="center">
260
+
261
+ Copyright 2017-2026, Voxel51, Inc. · [Apache 2.0 License](LICENSE)
262
+
263
+ </div>
264
+
@@ -0,0 +1,231 @@
1
+ # FiftyOne MCP Server
2
+
3
+ <!-- mcp-name: io.github.voxel51/fiftyone-mcp-server -->
4
+
5
+ <div align="center">
6
+ <p align="center">
7
+
8
+ <!-- prettier-ignore -->
9
+ <img src="https://user-images.githubusercontent.com/25985824/106288517-2422e000-6216-11eb-871d-26ad2e7b1e59.png" height="55px"> &nbsp;
10
+ <img src="https://user-images.githubusercontent.com/25985824/106288518-24bb7680-6216-11eb-8f10-60052c519586.png" height="50px">
11
+
12
+ </p>
13
+
14
+ **Control FiftyOne datasets through AI assistants using the Model Context Protocol**
15
+
16
+ [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
17
+ [![PyPI](https://img.shields.io/pypi/v/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
18
+ [![Python](https://img.shields.io/pypi/pyversions/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
19
+ [![Discord](https://img.shields.io/badge/Discord-FiftyOne%20Community-7289DA.svg)](https://discord.gg/fiftyone-community)
20
+
21
+ [Documentation](https://docs.voxel51.com) · [FiftyOne Skills](https://github.com/voxel51/fiftyone-skills) · [FiftyOne Plugins](https://github.com/voxel51/fiftyone-plugins) · [Discord](https://discord.gg/fiftyone-community)
22
+
23
+ </div>
24
+
25
+ ## What is the FiftyOne MCP Server?
26
+
27
+ Enable Agents to explore datasets, execute operators, and build computer vision workflows through natural language. This server exposes FiftyOne's operator framework (80+ built-in operators) through 16 MCP tools.
28
+
29
+ ```
30
+ "List all my datasets"
31
+ "Load quickstart dataset and show summary"
32
+ "Find similar images in my dataset"
33
+ ```
34
+
35
+ The server starts with 50 built-in operators. Install plugins to expand functionality - the AI can discover and install plugins automatically when needed (brain, zoo, annotation, evaluation, and more).
36
+
37
+ ## Available Tools
38
+
39
+ | Category | Tools | Description |
40
+ | ------------------------- | ----- | -------------------------------------------- |
41
+ | 📊 **Dataset Management** | 3 | List, load, and summarize datasets |
42
+ | ⚡ **Operator System** | 5 | Execute any FiftyOne operator dynamically |
43
+ | 🔌 **Plugin Management** | 5 | Discover and install FiftyOne plugins |
44
+ | 🖥️ **Session Management** | 3 | Control FiftyOne App for delegated execution |
45
+
46
+ **Design Philosophy:** Minimal tool count (16 tools), maximum flexibility (full operator & plugin ecosystem).
47
+
48
+ ## Quick Start
49
+
50
+ ### Step 1: Install the MCP Server
51
+
52
+ ```bash
53
+ pip install fiftyone-mcp-server
54
+ ```
55
+
56
+ > **⚠️ Important:** Make sure to use the same Python environment where you installed the MCP server when configuring your AI tool. If you installed it in a virtual environment or conda environment, you must activate that environment or specify the full path to the executable.
57
+
58
+ ### Step 2: Configure Your AI Tool
59
+
60
+ <details>
61
+ <summary><b>Claude Code</b> (Recommended)</summary>
62
+
63
+ ```bash
64
+ claude mcp add fiftyone -- fiftyone-mcp
65
+ ```
66
+
67
+ </details>
68
+
69
+ <details>
70
+ <summary><b>Claude Desktop</b></summary>
71
+
72
+ Edit `~/Library/Application Support/Claude/claude_desktop_config.json`:
73
+
74
+ ```json
75
+ {
76
+ "mcpServers": {
77
+ "fiftyone": {
78
+ "command": "fiftyone-mcp"
79
+ }
80
+ }
81
+ }
82
+ ```
83
+
84
+ </details>
85
+
86
+ <details>
87
+ <summary><b>Cursor</b></summary>
88
+
89
+ [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](cursor://anysphere.cursor-deeplink/mcp/install?name=fiftyone&config=eyJjb21tYW5kIjoiZmlmdHlvbmUtbWNwIn0)
90
+
91
+ Add to `~/.cursor/mcp.json`:
92
+
93
+ ```json
94
+ {
95
+ "mcpServers": {
96
+ "fiftyone": {
97
+ "command": "fiftyone-mcp"
98
+ }
99
+ }
100
+ }
101
+ ```
102
+
103
+ </details>
104
+
105
+ <details>
106
+ <summary><b>VSCode</b></summary>
107
+
108
+ [![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fiftyone&config=%7B%22command%22%3A%22fiftyone-mcp%22%7D)
109
+
110
+ Add to `.vscode/mcp.json`:
111
+
112
+ ```json
113
+ {
114
+ "servers": {
115
+ "fiftyone": {
116
+ "command": "fiftyone-mcp"
117
+ }
118
+ }
119
+ }
120
+ ```
121
+
122
+ </details>
123
+
124
+ <details>
125
+ <summary><b>ChatGPT Desktop</b></summary>
126
+
127
+ Edit `~/Library/Application Support/ChatGPT/config.json`:
128
+
129
+ ```json
130
+ {
131
+ "mcpServers": {
132
+ "fiftyone": {
133
+ "command": "fiftyone-mcp"
134
+ }
135
+ }
136
+ }
137
+ ```
138
+
139
+ </details>
140
+
141
+ <details>
142
+ <summary><b>uvx (No Install Needed)</b></summary>
143
+
144
+ If you have [uv](https://github.com/astral-sh/uv) installed:
145
+
146
+ ```json
147
+ {
148
+ "mcpServers": {
149
+ "fiftyone": {
150
+ "command": "uvx",
151
+ "args": ["fiftyone-mcp-server"]
152
+ }
153
+ }
154
+ }
155
+ ```
156
+
157
+ This downloads and runs the latest version automatically.
158
+
159
+ </details>
160
+
161
+ ### Step 3: Use It
162
+
163
+ ```
164
+ "List all my datasets"
165
+ "Load quickstart dataset and show summary"
166
+ "What operators are available for managing samples?"
167
+ "Set context to my dataset, then tag high-confidence samples"
168
+ "What plugins are available? Install the brain plugin"
169
+ "Find similar images in my dataset"
170
+ ```
171
+
172
+ Claude will automatically discover operators and execute the appropriate tools.
173
+
174
+ ## Contributing
175
+
176
+ We welcome contributions! Here's how to set up a local development environment:
177
+
178
+ 1. **Clone** the repository
179
+
180
+ ```bash
181
+ git clone https://github.com/voxel51/fiftyone-mcp-server.git
182
+ cd fiftyone-mcp-server
183
+ ```
184
+
185
+ 2. **Install** dependencies
186
+
187
+ ```bash
188
+ poetry install
189
+ ```
190
+
191
+ 3. **Run** the server locally
192
+
193
+ ```bash
194
+ poetry run fiftyone-mcp
195
+ ```
196
+
197
+ 4. **Test** your changes
198
+
199
+ ```bash
200
+ poetry run pytest
201
+ poetry run black -l 79 src/
202
+ npx @modelcontextprotocol/inspector poetry run fiftyone-mcp
203
+ ```
204
+
205
+ 5. **Submit** a Pull Request
206
+
207
+ ## Resources
208
+
209
+ | Resource | Description |
210
+ | --------------------------------------------------------------- | ---------------------------------- |
211
+ | [FiftyOne Docs](https://docs.voxel51.com) | Official documentation |
212
+ | [FiftyOne Skills](https://github.com/voxel51/fiftyone-skills) | Expert workflows for AI assistants |
213
+ | [FiftyOne Plugins](https://github.com/voxel51/fiftyone-plugins) | Official plugin collection |
214
+ | [Model Context Protocol](https://modelcontextprotocol.io) | MCP specification |
215
+ | [PyPI Package](https://pypi.org/project/fiftyone-mcp-server/) | MCP server on PyPI |
216
+ | [Discord Community](https://discord.gg/fiftyone-community) | Get help and share ideas |
217
+
218
+ ## Community
219
+
220
+ Join the FiftyOne community to get help, share your ideas, and connect with other users:
221
+
222
+ - **Discord**: [FiftyOne Community](https://discord.gg/fiftyone-community)
223
+ - **GitHub Issues**: [Report bugs or request features](https://github.com/voxel51/fiftyone-mcp-server/issues)
224
+
225
+ ---
226
+
227
+ <div align="center">
228
+
229
+ Copyright 2017-2026, Voxel51, Inc. · [Apache 2.0 License](LICENSE)
230
+
231
+ </div>
@@ -1,13 +1,13 @@
1
1
  [tool.poetry]
2
2
  name = "fiftyone-mcp-server"
3
- version = "0.1.1"
3
+ version = "0.1.3"
4
4
  description = "MCP server exposing FiftyOne dataset analysis tools"
5
5
  authors = ["Adonai Vera <adonai.vera@gmail.com>"]
6
6
  license = "MIT"
7
7
  readme = "README.md"
8
- homepage = "https://github.com/AdonaiVera/fiftyone-mcp-server"
9
- repository = "https://github.com/AdonaiVera/fiftyone-mcp-server"
10
- documentation = "https://github.com/AdonaiVera/fiftyone-mcp-server#readme"
8
+ homepage = "https://github.com/voxel51/fiftyone-mcp-server"
9
+ repository = "https://github.com/voxel51/fiftyone-mcp-server"
10
+ documentation = "https://github.com/voxel51/fiftyone-mcp-server#readme"
11
11
  keywords = ["mcp", "fiftyone", "computer-vision", "ai", "datasets", "model-context-protocol"]
12
12
  classifiers = [
13
13
  "Development Status :: 4 - Beta",
@@ -26,11 +26,12 @@ packages = [{include = "fiftyone_mcp", from = "src"}]
26
26
 
27
27
  [tool.poetry.dependencies]
28
28
  python = ">=3.10,<3.14"
29
- fiftyone = "^1.0"
30
- mcp = "^0.9.0"
31
- torch = "^2.9.1"
32
- torchvision = "^0.24.1"
33
- ultralytics = "^8.3.240"
29
+ fiftyone = ">=1.0"
30
+ exceptiongroup = {version = ">=1.0", python = "<3.11"}
31
+ mcp = ">=0.9.0"
32
+ torch = ">=2.0"
33
+ torchvision = ">=0.15"
34
+ ultralytics = ">=8.0"
34
35
 
35
36
  [tool.poetry.group.dev.dependencies]
36
37
  pytest = "^8.0.0"
@@ -1,252 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: fiftyone-mcp-server
3
- Version: 0.1.1
4
- Summary: MCP server exposing FiftyOne dataset analysis tools
5
- License: MIT
6
- Keywords: mcp,fiftyone,computer-vision,ai,datasets,model-context-protocol
7
- Author: Adonai Vera
8
- Author-email: adonai.vera@gmail.com
9
- Requires-Python: >=3.10,<3.14
10
- Classifier: Development Status :: 4 - Beta
11
- Classifier: Intended Audience :: Developers
12
- Classifier: Intended Audience :: Science/Research
13
- Classifier: License :: OSI Approved :: MIT License
14
- Classifier: Operating System :: OS Independent
15
- Classifier: Programming Language :: Python :: 3
16
- Classifier: Programming Language :: Python :: 3.10
17
- Classifier: Programming Language :: Python :: 3.11
18
- Classifier: Programming Language :: Python :: 3.12
19
- Classifier: Programming Language :: Python :: 3.13
20
- Classifier: Programming Language :: Python :: 3.9
21
- Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
22
- Requires-Dist: fiftyone (>=1.0,<2.0)
23
- Requires-Dist: mcp (>=0.9.0,<0.10.0)
24
- Requires-Dist: torch (>=2.9.1,<3.0.0)
25
- Requires-Dist: torchvision (>=0.24.1,<0.25.0)
26
- Requires-Dist: ultralytics (>=8.3.240,<9.0.0)
27
- Project-URL: Documentation, https://github.com/AdonaiVera/fiftyone-mcp-server#readme
28
- Project-URL: Homepage, https://github.com/AdonaiVera/fiftyone-mcp-server
29
- Project-URL: Repository, https://github.com/AdonaiVera/fiftyone-mcp-server
30
- Description-Content-Type: text/markdown
31
-
32
- # FiftyOne MCP Server
33
-
34
- <!-- mcp-name: io.github.AdonaiVera/fiftyone-mcp-server -->
35
-
36
- <div align="center">
37
- <p align="center">
38
-
39
- <!-- prettier-ignore -->
40
- <img src="https://user-images.githubusercontent.com/25985824/106288517-2422e000-6216-11eb-871d-26ad2e7b1e59.png" height="55px"> &nbsp;
41
- <img src="https://user-images.githubusercontent.com/25985824/106288518-24bb7680-6216-11eb-8f10-60052c519586.png" height="50px">
42
-
43
- ![fo_agent](https://github.com/user-attachments/assets/ffba1886-125c-4c73-ae51-a300b652cffe)
44
-
45
- > Control FiftyOne datasets through AI assistants using the Model Context Protocol
46
-
47
- [![PyPI](https://img.shields.io/pypi/v/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
48
- [![Python](https://img.shields.io/pypi/pyversions/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
49
-
50
- </p>
51
- </div>
52
-
53
- ## Overview
54
-
55
- Enable ChatGPT and Claude to explore datasets, execute operators, and build computer vision workflows through natural language. This server exposes FiftyOne's operator framework (80+ built-in operators) through 16 MCP tools.
56
-
57
- ## Features
58
-
59
- - **Dataset Management (3 tools)** - List, load, and summarize datasets
60
- - **Operator System (5 tools)** - Execute any FiftyOne operator dynamically
61
- - **Plugin Management (5 tools)** - Discover and install FiftyOne plugins
62
- - **Session Management (3 tools)** - Control FiftyOne App for delegated execution
63
- - **Natural Language Workflows** - Multi-step operations through conversation
64
- - **ChatGPT & Claude Compatible** - Works with desktop apps
65
-
66
- ## Quick Start
67
-
68
- ### Option 1: pip (Simplest)
69
-
70
- ```bash
71
- pip install fiftyone-mcp-server
72
- ```
73
-
74
- Then add to your AI tool config and restart:
75
-
76
- <details>
77
- <summary><b>Claude Desktop</b></summary>
78
-
79
- Edit `~/Library/Application Support/Claude/claude_desktop_config.json`:
80
-
81
- ```json
82
- {
83
- "mcpServers": {
84
- "fiftyone": {
85
- "command": "fiftyone-mcp"
86
- }
87
- }
88
- }
89
- ```
90
- </details>
91
-
92
- <details>
93
- <summary><b>Claude Code</b></summary>
94
-
95
- ```bash
96
- claude mcp add fiftyone -- fiftyone-mcp
97
- ```
98
- </details>
99
-
100
- <details>
101
- <summary><b>Cursor</b></summary>
102
-
103
- Add to Cursor MCP settings:
104
-
105
- ```json
106
- {
107
- "fiftyone": {
108
- "command": "fiftyone-mcp"
109
- }
110
- }
111
- ```
112
- </details>
113
-
114
- <details>
115
- <summary><b>VSCode</b></summary>
116
-
117
- Add to `.vscode/mcp.json`:
118
-
119
- ```json
120
- {
121
- "servers": {
122
- "fiftyone": {
123
- "command": "fiftyone-mcp"
124
- }
125
- }
126
- }
127
- ```
128
- </details>
129
-
130
- <details>
131
- <summary><b>ChatGPT Desktop</b></summary>
132
-
133
- Edit `~/Library/Application Support/ChatGPT/config.json`:
134
-
135
- ```json
136
- {
137
- "mcpServers": {
138
- "fiftyone": {
139
- "command": "fiftyone-mcp"
140
- }
141
- }
142
- }
143
- ```
144
- </details>
145
-
146
- ### Option 2: uvx (No Install Needed)
147
-
148
- If you have [uv](https://github.com/astral-sh/uv) installed:
149
-
150
- ```json
151
- {
152
- "mcpServers": {
153
- "fiftyone": {
154
- "command": "uvx",
155
- "args": ["fiftyone-mcp-server"]
156
- }
157
- }
158
- }
159
- ```
160
-
161
- This downloads and runs the latest version automatically.
162
-
163
- ## Usage
164
-
165
- After configuration, restart your AI assistant and try:
166
-
167
- ```
168
- "List all my datasets"
169
- "Load quickstart dataset and show summary"
170
- "What operators are available for managing samples?"
171
- "Set context to my dataset, then tag high-confidence samples"
172
- "What plugins are available? Install the brain plugin"
173
- "Find similar images in my dataset"
174
- ```
175
-
176
- The server starts with 50 built-in operators. Install plugins to expand functionality - the AI can discover and install plugins automatically when needed (brain, zoo, annotation, evaluation, and more).
177
-
178
- ## Architecture
179
-
180
- | Component | Description |
181
- |-----------|-------------|
182
- | **Operator System** | 80+ FiftyOne operators through unified interface |
183
- | **Plugin System** | AI discovers and installs plugins on demand |
184
- | **Session System** | Launch FiftyOne App for delegated operators |
185
- | **Context Management** | Dataset, view, and selection state |
186
-
187
- **Design Philosophy:** Minimal tool count (16 tools), maximum flexibility (full operator & plugin ecosystem).
188
-
189
- ## Contributing
190
-
191
- We welcome contributions! Here's how to set up a local development environment.
192
-
193
- ### Local Development Setup
194
-
195
- ```bash
196
- # Clone the repository
197
- git clone https://github.com/AdonaiVera/fiftyone-mcp-server.git
198
- cd fiftyone-mcp-server
199
-
200
- # Install Poetry (if not installed)
201
- curl -sSL https://install.python-poetry.org | python3 -
202
-
203
- # Install dependencies
204
- poetry install
205
-
206
- # Run the server locally
207
- poetry run fiftyone-mcp
208
- ```
209
-
210
- ### Testing Your Changes
211
-
212
- ```bash
213
- # Run tests
214
- poetry run pytest
215
-
216
- # Code formatting
217
- poetry run black -l 79 src/
218
-
219
- # Linting
220
- poetry run pylint --errors-only src/
221
-
222
- # Test with MCP Inspector
223
- npx @modelcontextprotocol/inspector poetry run fiftyone-mcp
224
- ```
225
-
226
- ### Using Local Version with Claude
227
-
228
- To test your local changes with Claude Desktop, update your config:
229
-
230
- ```json
231
- {
232
- "mcpServers": {
233
- "fiftyone": {
234
- "command": "poetry",
235
- "args": ["run", "fiftyone-mcp"],
236
- "cwd": "/absolute/path/to/fiftyone-mcp-server"
237
- }
238
- }
239
- }
240
- ```
241
- ## Resources
242
-
243
- - [FiftyOne Docs](https://docs.voxel51.com/)
244
- - [FiftyOne Operators](https://docs.voxel51.com/plugins/developing_plugins.html)
245
- - [Model Context Protocol](https://modelcontextprotocol.io)
246
- - [MCP Inspector](https://github.com/modelcontextprotocol/inspector)
247
- - [PyPI Package](https://pypi.org/project/fiftyone-mcp-server/)
248
-
249
- ---
250
-
251
- Built with [FiftyOne](https://voxel51.com/fiftyone) and [Model Context Protocol](https://modelcontextprotocol.io)
252
-
@@ -1,220 +0,0 @@
1
- # FiftyOne MCP Server
2
-
3
- <!-- mcp-name: io.github.AdonaiVera/fiftyone-mcp-server -->
4
-
5
- <div align="center">
6
- <p align="center">
7
-
8
- <!-- prettier-ignore -->
9
- <img src="https://user-images.githubusercontent.com/25985824/106288517-2422e000-6216-11eb-871d-26ad2e7b1e59.png" height="55px"> &nbsp;
10
- <img src="https://user-images.githubusercontent.com/25985824/106288518-24bb7680-6216-11eb-8f10-60052c519586.png" height="50px">
11
-
12
- ![fo_agent](https://github.com/user-attachments/assets/ffba1886-125c-4c73-ae51-a300b652cffe)
13
-
14
- > Control FiftyOne datasets through AI assistants using the Model Context Protocol
15
-
16
- [![PyPI](https://img.shields.io/pypi/v/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
17
- [![Python](https://img.shields.io/pypi/pyversions/fiftyone-mcp-server.svg)](https://pypi.org/project/fiftyone-mcp-server/)
18
-
19
- </p>
20
- </div>
21
-
22
- ## Overview
23
-
24
- Enable ChatGPT and Claude to explore datasets, execute operators, and build computer vision workflows through natural language. This server exposes FiftyOne's operator framework (80+ built-in operators) through 16 MCP tools.
25
-
26
- ## Features
27
-
28
- - **Dataset Management (3 tools)** - List, load, and summarize datasets
29
- - **Operator System (5 tools)** - Execute any FiftyOne operator dynamically
30
- - **Plugin Management (5 tools)** - Discover and install FiftyOne plugins
31
- - **Session Management (3 tools)** - Control FiftyOne App for delegated execution
32
- - **Natural Language Workflows** - Multi-step operations through conversation
33
- - **ChatGPT & Claude Compatible** - Works with desktop apps
34
-
35
- ## Quick Start
36
-
37
- ### Option 1: pip (Simplest)
38
-
39
- ```bash
40
- pip install fiftyone-mcp-server
41
- ```
42
-
43
- Then add to your AI tool config and restart:
44
-
45
- <details>
46
- <summary><b>Claude Desktop</b></summary>
47
-
48
- Edit `~/Library/Application Support/Claude/claude_desktop_config.json`:
49
-
50
- ```json
51
- {
52
- "mcpServers": {
53
- "fiftyone": {
54
- "command": "fiftyone-mcp"
55
- }
56
- }
57
- }
58
- ```
59
- </details>
60
-
61
- <details>
62
- <summary><b>Claude Code</b></summary>
63
-
64
- ```bash
65
- claude mcp add fiftyone -- fiftyone-mcp
66
- ```
67
- </details>
68
-
69
- <details>
70
- <summary><b>Cursor</b></summary>
71
-
72
- Add to Cursor MCP settings:
73
-
74
- ```json
75
- {
76
- "fiftyone": {
77
- "command": "fiftyone-mcp"
78
- }
79
- }
80
- ```
81
- </details>
82
-
83
- <details>
84
- <summary><b>VSCode</b></summary>
85
-
86
- Add to `.vscode/mcp.json`:
87
-
88
- ```json
89
- {
90
- "servers": {
91
- "fiftyone": {
92
- "command": "fiftyone-mcp"
93
- }
94
- }
95
- }
96
- ```
97
- </details>
98
-
99
- <details>
100
- <summary><b>ChatGPT Desktop</b></summary>
101
-
102
- Edit `~/Library/Application Support/ChatGPT/config.json`:
103
-
104
- ```json
105
- {
106
- "mcpServers": {
107
- "fiftyone": {
108
- "command": "fiftyone-mcp"
109
- }
110
- }
111
- }
112
- ```
113
- </details>
114
-
115
- ### Option 2: uvx (No Install Needed)
116
-
117
- If you have [uv](https://github.com/astral-sh/uv) installed:
118
-
119
- ```json
120
- {
121
- "mcpServers": {
122
- "fiftyone": {
123
- "command": "uvx",
124
- "args": ["fiftyone-mcp-server"]
125
- }
126
- }
127
- }
128
- ```
129
-
130
- This downloads and runs the latest version automatically.
131
-
132
- ## Usage
133
-
134
- After configuration, restart your AI assistant and try:
135
-
136
- ```
137
- "List all my datasets"
138
- "Load quickstart dataset and show summary"
139
- "What operators are available for managing samples?"
140
- "Set context to my dataset, then tag high-confidence samples"
141
- "What plugins are available? Install the brain plugin"
142
- "Find similar images in my dataset"
143
- ```
144
-
145
- The server starts with 50 built-in operators. Install plugins to expand functionality - the AI can discover and install plugins automatically when needed (brain, zoo, annotation, evaluation, and more).
146
-
147
- ## Architecture
148
-
149
- | Component | Description |
150
- |-----------|-------------|
151
- | **Operator System** | 80+ FiftyOne operators through unified interface |
152
- | **Plugin System** | AI discovers and installs plugins on demand |
153
- | **Session System** | Launch FiftyOne App for delegated operators |
154
- | **Context Management** | Dataset, view, and selection state |
155
-
156
- **Design Philosophy:** Minimal tool count (16 tools), maximum flexibility (full operator & plugin ecosystem).
157
-
158
- ## Contributing
159
-
160
- We welcome contributions! Here's how to set up a local development environment.
161
-
162
- ### Local Development Setup
163
-
164
- ```bash
165
- # Clone the repository
166
- git clone https://github.com/AdonaiVera/fiftyone-mcp-server.git
167
- cd fiftyone-mcp-server
168
-
169
- # Install Poetry (if not installed)
170
- curl -sSL https://install.python-poetry.org | python3 -
171
-
172
- # Install dependencies
173
- poetry install
174
-
175
- # Run the server locally
176
- poetry run fiftyone-mcp
177
- ```
178
-
179
- ### Testing Your Changes
180
-
181
- ```bash
182
- # Run tests
183
- poetry run pytest
184
-
185
- # Code formatting
186
- poetry run black -l 79 src/
187
-
188
- # Linting
189
- poetry run pylint --errors-only src/
190
-
191
- # Test with MCP Inspector
192
- npx @modelcontextprotocol/inspector poetry run fiftyone-mcp
193
- ```
194
-
195
- ### Using Local Version with Claude
196
-
197
- To test your local changes with Claude Desktop, update your config:
198
-
199
- ```json
200
- {
201
- "mcpServers": {
202
- "fiftyone": {
203
- "command": "poetry",
204
- "args": ["run", "fiftyone-mcp"],
205
- "cwd": "/absolute/path/to/fiftyone-mcp-server"
206
- }
207
- }
208
- }
209
- ```
210
- ## Resources
211
-
212
- - [FiftyOne Docs](https://docs.voxel51.com/)
213
- - [FiftyOne Operators](https://docs.voxel51.com/plugins/developing_plugins.html)
214
- - [Model Context Protocol](https://modelcontextprotocol.io)
215
- - [MCP Inspector](https://github.com/modelcontextprotocol/inspector)
216
- - [PyPI Package](https://pypi.org/project/fiftyone-mcp-server/)
217
-
218
- ---
219
-
220
- Built with [FiftyOne](https://voxel51.com/fiftyone) and [Model Context Protocol](https://modelcontextprotocol.io)