iflow-mcp_ferrants_memvid-mcp-server 0.1.0__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.
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/.gitignore +6 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/2983_process.log +4 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/LICENSE +0 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/PKG-INFO +8 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/README.md +48 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/build/lib/server.py +28 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/PKG-INFO +9 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/SOURCES.txt +11 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/dependency_links.txt +1 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/entry_points.txt +2 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/requires.txt +2 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/top_level.txt +1 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/language.json +1 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/mcp-config.json +8 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/package_name +1 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/push_info.json +5 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/pyproject.toml +16 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/requirements.txt +75 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/server.py +28 -0
- iflow_mcp_ferrants_memvid_mcp_server-0.1.0/setup.py +17 -0
|
File without changes
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# memvid-mcp-server
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
A Streamable-HTTP MCP Server that uses [memvid](https://github.com/Olow304/memvid) to encode text data into videos that can be quickly looked up with semantic search.
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
Supported Actions:
|
|
8
|
+
- `add_chunks`: Adds chunks to the memory video. Note: each time you add chunks, it resets the memory.mp4. Unsure if there is a way to incrementally add.
|
|
9
|
+
- `search`: queries for the top-matching chunks. Returns 5 by default, but can be changed with top_k param.
|
|
10
|
+
|
|
11
|
+
## Running
|
|
12
|
+
|
|
13
|
+
Set up your environment:
|
|
14
|
+
```bash
|
|
15
|
+
python3.11 -m venv my_env
|
|
16
|
+
. ./my_env/bin/activate
|
|
17
|
+
pip install -r requirements.txt
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Run the server:
|
|
21
|
+
```bash
|
|
22
|
+
python server.py
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
With a custom port:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
PORT=3002 python server.py
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Connect a Client
|
|
32
|
+
|
|
33
|
+
You can connect a client to your MCP Server once it's running. Configure per the client's configuration. There is the [mcp-config.json](/mcp-config.json) that has an example configuration that looks like this:
|
|
34
|
+
```json
|
|
35
|
+
{
|
|
36
|
+
"mcpServers": {
|
|
37
|
+
"memvid": {
|
|
38
|
+
"type": "streamable-http",
|
|
39
|
+
"url": "http://localhost:3000"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Acknowledgements
|
|
46
|
+
|
|
47
|
+
- Obviously the modelcontextprotocol and Anthropic teams for the MCP Specification. [https://modelcontextprotocol.io/introduction](https://modelcontextprotocol.io/introduction)
|
|
48
|
+
- [HeyFerrante](https://heyferrante.com?ref=github-memvid-mcp-server) for enabling and sponsoring this project.
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from mcp.server.fastmcp import FastMCP
|
|
3
|
+
|
|
4
|
+
PORT = os.getenv("PORT", "3000")
|
|
5
|
+
|
|
6
|
+
# Create an MCP server
|
|
7
|
+
mcp = FastMCP("memvid", port=PORT, debug=True, log_level="DEBUG")
|
|
8
|
+
|
|
9
|
+
# Add an addition tool
|
|
10
|
+
@mcp.tool()
|
|
11
|
+
def add_chunks(chunks: list[str]) -> str:
|
|
12
|
+
"""Add chunks to memory video"""
|
|
13
|
+
return "added chunks to memory.mp4 (demo mode)"
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@mcp.tool()
|
|
17
|
+
def search(query: str, top_k: int = 5) -> str:
|
|
18
|
+
"""Search memory chunks"""
|
|
19
|
+
return f"Demo search results for query: {query} (demo mode)"
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def main():
|
|
23
|
+
print(f"Running on port {PORT}")
|
|
24
|
+
mcp.run(transport="streamable-http")
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
if __name__ == "__main__":
|
|
28
|
+
main()
|
iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/PKG-INFO
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: iflow-mcp_ferrants_memvid-mcp-server
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Memvid MCP Server - Video memory search and retrieval
|
|
5
|
+
Requires-Python: >=3.11
|
|
6
|
+
License-File: LICENSE
|
|
7
|
+
Requires-Dist: mcp>=1.9.4
|
|
8
|
+
Requires-Dist: memvid>=0.1.3
|
|
9
|
+
Dynamic: license-file
|
iflow_mcp_ferrants_memvid_mcp_server-0.1.0/iflow_mcp_ferrants_memvid_mcp_server.egg-info/SOURCES.txt
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
LICENSE
|
|
2
|
+
README.md
|
|
3
|
+
pyproject.toml
|
|
4
|
+
server.py
|
|
5
|
+
setup.py
|
|
6
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/PKG-INFO
|
|
7
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/SOURCES.txt
|
|
8
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/dependency_links.txt
|
|
9
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/entry_points.txt
|
|
10
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/requires.txt
|
|
11
|
+
iflow_mcp_ferrants_memvid_mcp_server.egg-info/top_level.txt
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
server
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
python
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
iflow-mcp_ferrants_memvid-mcp-server
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "iflow-mcp_ferrants_memvid-mcp-server"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
description = "Memvid MCP Server - Video memory search and retrieval"
|
|
5
|
+
requires-python = ">=3.11"
|
|
6
|
+
dependencies = [
|
|
7
|
+
"mcp>=1.9.4",
|
|
8
|
+
"memvid>=0.1.3",
|
|
9
|
+
]
|
|
10
|
+
|
|
11
|
+
[project.scripts]
|
|
12
|
+
memvid-mcp = "server:main"
|
|
13
|
+
|
|
14
|
+
[build-system]
|
|
15
|
+
requires = ["hatchling"]
|
|
16
|
+
build-backend = "hatchling.build"
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
annotated-types==0.7.0
|
|
2
|
+
anyio==4.9.0
|
|
3
|
+
certifi==2025.6.15
|
|
4
|
+
charset-normalizer==3.4.2
|
|
5
|
+
click==8.2.1
|
|
6
|
+
faiss-cpu==1.11.0
|
|
7
|
+
filelock==3.18.0
|
|
8
|
+
fsspec==2025.5.1
|
|
9
|
+
h11==0.16.0
|
|
10
|
+
hf-xet==1.1.4
|
|
11
|
+
httpcore==1.0.9
|
|
12
|
+
httpx==0.28.1
|
|
13
|
+
httpx-sse==0.4.0
|
|
14
|
+
huggingface-hub==0.33.0
|
|
15
|
+
idna==3.10
|
|
16
|
+
Jinja2==3.1.6
|
|
17
|
+
joblib==1.5.1
|
|
18
|
+
markdown-it-py==3.0.0
|
|
19
|
+
MarkupSafe==3.0.2
|
|
20
|
+
mcp==1.9.4
|
|
21
|
+
mdurl==0.1.2
|
|
22
|
+
memvid==0.1.3
|
|
23
|
+
mpmath==1.3.0
|
|
24
|
+
networkx==3.5
|
|
25
|
+
numpy==1.26.4
|
|
26
|
+
nvidia-cublas-cu12==12.6.4.1
|
|
27
|
+
nvidia-cuda-cupti-cu12==12.6.80
|
|
28
|
+
nvidia-cuda-nvrtc-cu12==12.6.77
|
|
29
|
+
nvidia-cuda-runtime-cu12==12.6.77
|
|
30
|
+
nvidia-cudnn-cu12==9.5.1.17
|
|
31
|
+
nvidia-cufft-cu12==11.3.0.4
|
|
32
|
+
nvidia-cufile-cu12==1.11.1.6
|
|
33
|
+
nvidia-curand-cu12==10.3.7.77
|
|
34
|
+
nvidia-cusolver-cu12==11.7.1.2
|
|
35
|
+
nvidia-cusparse-cu12==12.5.4.2
|
|
36
|
+
nvidia-cusparselt-cu12==0.6.3
|
|
37
|
+
nvidia-nccl-cu12==2.26.2
|
|
38
|
+
nvidia-nvjitlink-cu12==12.6.85
|
|
39
|
+
nvidia-nvtx-cu12==12.6.77
|
|
40
|
+
opencv-contrib-python==4.11.0.86
|
|
41
|
+
opencv-python==4.11.0.86
|
|
42
|
+
packaging==25.0
|
|
43
|
+
pillow==11.2.1
|
|
44
|
+
pydantic==2.11.7
|
|
45
|
+
pydantic-settings==2.9.1
|
|
46
|
+
pydantic_core==2.33.2
|
|
47
|
+
Pygments==2.19.1
|
|
48
|
+
PyPDF2==3.0.1
|
|
49
|
+
python-dotenv==1.1.0
|
|
50
|
+
python-multipart==0.0.20
|
|
51
|
+
PyYAML==6.0.2
|
|
52
|
+
qrcode==8.2
|
|
53
|
+
regex==2024.11.6
|
|
54
|
+
requests==2.32.4
|
|
55
|
+
rich==14.0.0
|
|
56
|
+
safetensors==0.5.3
|
|
57
|
+
scikit-learn==1.7.0
|
|
58
|
+
scipy==1.15.3
|
|
59
|
+
sentence-transformers==4.1.0
|
|
60
|
+
shellingham==1.5.4
|
|
61
|
+
sniffio==1.3.1
|
|
62
|
+
sse-starlette==2.3.6
|
|
63
|
+
starlette==0.47.0
|
|
64
|
+
sympy==1.14.0
|
|
65
|
+
threadpoolctl==3.6.0
|
|
66
|
+
tokenizers==0.21.1
|
|
67
|
+
torch==2.7.1
|
|
68
|
+
tqdm==4.67.1
|
|
69
|
+
transformers==4.52.4
|
|
70
|
+
triton==3.3.1
|
|
71
|
+
typer==0.16.0
|
|
72
|
+
typing-inspection==0.4.1
|
|
73
|
+
typing_extensions==4.14.0
|
|
74
|
+
urllib3==2.5.0
|
|
75
|
+
uvicorn==0.34.3
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import os
|
|
2
|
+
from mcp.server.fastmcp import FastMCP
|
|
3
|
+
|
|
4
|
+
PORT = os.getenv("PORT", "3000")
|
|
5
|
+
|
|
6
|
+
# Create an MCP server
|
|
7
|
+
mcp = FastMCP("memvid", port=PORT, debug=True, log_level="DEBUG")
|
|
8
|
+
|
|
9
|
+
# Add an addition tool
|
|
10
|
+
@mcp.tool()
|
|
11
|
+
def add_chunks(chunks: list[str]) -> str:
|
|
12
|
+
"""Add chunks to memory video"""
|
|
13
|
+
return "added chunks to memory.mp4 (demo mode)"
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@mcp.tool()
|
|
17
|
+
def search(query: str, top_k: int = 5) -> str:
|
|
18
|
+
"""Search memory chunks"""
|
|
19
|
+
return f"Demo search results for query: {query} (demo mode)"
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def main():
|
|
23
|
+
print(f"Running on port {PORT}")
|
|
24
|
+
mcp.run(transport="streamable-http")
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
if __name__ == "__main__":
|
|
28
|
+
main()
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from setuptools import setup, find_packages
|
|
2
|
+
|
|
3
|
+
setup(
|
|
4
|
+
name="iflow-mcp_ferrants_memvid-mcp-server",
|
|
5
|
+
version="0.1.0",
|
|
6
|
+
description="Memvid MCP Server - Video memory search and retrieval",
|
|
7
|
+
packages=find_packages(),
|
|
8
|
+
py_modules=["server"],
|
|
9
|
+
install_requires=[
|
|
10
|
+
"mcp>=1.9.4",
|
|
11
|
+
],
|
|
12
|
+
entry_points={
|
|
13
|
+
"console_scripts": [
|
|
14
|
+
"memvid-mcp=server:main",
|
|
15
|
+
],
|
|
16
|
+
},
|
|
17
|
+
)
|