[project]
name = "rlm-mcp-server"
version = "0.1.0"
description = "MCP Server para Recursive Language Model - executa codigo Python em REPL persistente"
requires-python = ">=3.11"
dependencies = [
"mcp>=1.0.0",
"httpx>=0.28.0",
"python-dotenv>=1.0.0",
"uvicorn>=0.32.0",
"pydantic>=2.10.0",
"fastapi>=0.115.0",
"openai>=2.0.0", # v2.x requerido para GPT-5 family
"minio>=7.2.0", # Cliente S3/Minio para rlm_load_s3
"pdfplumber>=0.11.0", # Extração de texto de PDFs machine readable
"mistralai>=1.0.0", # Mistral OCR para PDFs escaneados
]
[project.optional-dependencies]
dev = [
"pytest>=8.0.0",
"pytest-asyncio>=0.24.0",
]
[project.scripts]
rlm-mcp = "rlm_mcp.http_server:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/rlm_mcp"]
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
testpaths = ["tests"]