Skip to main content
Glama
pyproject.toml4.36 kB
[project] name = "sherlog-mcp-server" version = "0.1.0" description = "A persistent IPython workspace for data analysis and log processing via MCP." readme = "README.md" requires-python = ">=3.10" authors = [ { name = "Sherlog AI", email = "navneet.nmk@gmail.com" } ] # Core runtime dependencies for the server # These will be resolved into exact pins in uv.lock dependencies = [ "mcp>=1.9.4", "fastmcp>=2.10.1", "pandas", "numpy", "requests", "polars-lts-cpu", "pyarrow", "pydantic>=2.0,<3.0", "matplotlib", "tabulate", "ipython", "fastapi", "uvicorn", "pydantic-settings", "python-multipart", "websockets", "jinja2", "aiofiles", "rich", "typer", "httpx", "ipykernel", "jupyter", "seaborn", "plotly", "PyYAML", "tree-sitter>=0.25.0", "tree-sitter-language-pack", "dill>=0.3.7", "pytest", "pytest-asyncio", "google-auth-oauthlib>=1.0.0", "google-auth-httplib2>=0.2.0", "google-api-python-client>=2.0.0", "cryptography>=41.0.0", "ast-grep-cli", "redis>=5.0.0", ] [project.scripts] sherlog-mcp-server = "sherlog_mcp_server:main" lint = "ruff:check" format-code = "ruff:format" [build-system] requires = ["setuptools>=67", "wheel"] build-backend = "setuptools.build_meta" [tool.uv] # Disable building/installing this project as a package; it's just scripts. package = false [tool.setuptools] py-modules = ["sherlog_mcp_server"] # Linting and formatting configuration [tool.ruff] line-length = 88 target-version = "py310" # Exclude a variety of commonly ignored directories. exclude = [ ".bzr", ".direnv", ".eggs", ".git", ".git-rewrite", ".hg", ".mypy_cache", ".nox", ".pants.d", ".pytype", ".ruff_cache", ".svn", ".tox", ".venv", "__pypackages__", "_build", "buck-out", "build", "dist", "node_modules", "venv", ] [tool.ruff.lint] # Enable pycodestyle (`E`) and Pyflakes (`F`) codes by default. # Plus: isort (`I`), pydocstyle (`D`), pyupgrade (`UP`), and more select = [ "E", # pycodestyle errors "W", # pycodestyle warnings "F", # Pyflakes "I", # isort "D", # pydocstyle "UP", # pyupgrade "B", # flake8-bugbear "C4", # flake8-comprehensions "T20", # flake8-print ] ignore = [ "D100", # Missing docstring in public module "D101", # Missing docstring in public class "D102", # Missing docstring in public method "D103", # Missing docstring in public function "D104", # Missing docstring in public package "D105", # Missing docstring in magic method "D203", # 1 blank line required before class docstring (conflicts with D211) "D212", # Multi-line docstring summary should start at the first line (conflicts with D213) "E501", # Line too long (let ruff format handle this) "T201", # print statements (allow for debugging) ] # Allow fix for all enabled rules (when `--fix`) is provided. fixable = ["ALL"] unfixable = [] [tool.ruff.format] # Like Black, use double quotes for strings. quote-style = "double" # Like Black, indent with spaces, rather than tabs. indent-style = "space" # Like Black, respect magic trailing commas. skip-magic-trailing-comma = false # Like Black, automatically detect the appropriate line ending. line-ending = "auto" [tool.ruff.lint.isort] known-first-party = ["sherlog_mcp"] [tool.mypy] python_version = "3.10" warn_return_any = true warn_unused_configs = true disallow_untyped_defs = false # Start lenient, can be made stricter disallow_incomplete_defs = false check_untyped_defs = true disallow_untyped_decorators = false no_implicit_optional = true warn_redundant_casts = true warn_unused_ignores = true warn_no_return = true warn_unreachable = true strict_equality = true # Handle third-party libraries without type stubs ignore_missing_imports = true # Exclude some directories exclude = [ "venv/", ".venv/", "build/", "dist/", ] [tool.black] line-length = 88 target-version = ['py310', 'py311', 'py312'] include = '\.pyi?$' extend-exclude = ''' /( # directories \.eggs | \.git | \.hg | \.mypy_cache | \.tox | \.venv | _build | buck-out | build | dist )/ ''' [dependency-groups] dev = [ "black>=25.1.0", "mypy>=1.16.1", "ruff>=0.12.0", ]

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GetSherlog/Sherlog-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server