Add RuntimeProvider with 17 MCP tools for controlling running flowgraphs: - Container lifecycle: launch, list, stop, remove - Connection: connect by URL or container name - Variable control: list, get, set via XML-RPC introspection - Flowgraph execution: start, stop, lock, unlock - Visual feedback: screenshot capture, container logs Docker is optional - 10 tools work without it for external flowgraphs. Includes: - DockerMiddleware wrapping docker.DockerClient - XmlRpcMiddleware wrapping xmlrpc.client.ServerProxy - Dockerfile with Xvfb + ImageMagick + VNC for headless QT - 29 new unit tests (71 total)
32 lines
592 B
TOML
32 lines
592 B
TOML
[build-system]
|
|
requires = ["setuptools>=61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "gnuradio-mcp"
|
|
version = "0.2.0"
|
|
description = "A FastMCP server for gnuradio."
|
|
requires-python = ">=3.14"
|
|
dependencies = [
|
|
"pydantic>=2.12",
|
|
"fastmcp>=3.0.0b1",
|
|
# for gnuradio
|
|
"mako>=1.3",
|
|
"pyyaml>=6.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
runtime = [
|
|
"docker>=7.0",
|
|
]
|
|
dev = [
|
|
"pytest>=9.0",
|
|
"pytest-asyncio>=1.3",
|
|
"pre-commit>=4.5",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
# Tell pytest where to find the package
|
|
pythonpath = ["src", "."]
|
|
asyncio_mode = "auto"
|