Skip to main content
Glama

Skill-to-MCP

pyproject.toml4.46 kB
[build-system] build-backend = "hatchling.build" requires = [ "hatchling" ] [project] name = "skill_to_mcp" version = "0.2.0" description = "Convert AI Skills (Claude Skills format) to MCP server resources" readme = "README.md" license = { file = "LICENSE" } maintainers = [ { name = "Malte Kuehl", email = "malte.kuehl@clin.au.dk" }, ] authors = [ { name = "Malte Kuehl" }, ] requires-python = ">=3.11" classifiers = [ "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", ] dependencies = [ "click", "fastmcp", "httpx>=0.28,<1", "pyyaml", ] optional-dependencies.dev = [ "pre-commit", "twine>=4.0.2", ] optional-dependencies.doc = [ "docutils>=0.8,!=0.18.*,!=0.19.*", "ipykernel", "ipython", "myst-nb>=1.1", "pandas", # Until pybtex >0.24.0 releases: https://bitbucket.org/pybtex-devs/pybtex/issues/169/ "setuptools", "sphinx>=8.1", "sphinx-book-theme>=1", "sphinx-copybutton", "sphinx-tabs", # "sphinxcontrib-bibtex>=1", "sphinxext-opengraph", "sphinx-autoapi", ] optional-dependencies.test = [ "coverage", "pytest", "pytest-asyncio", ] # https://docs.pypi.org/project_metadata/#project-urls urls.Documentation = "https://skill-to-mcp.readthedocs.io/" urls.Homepage = "https://github.com/biocontext-ai/skill-to-mcp" urls.Source = "https://github.com/biocontext-ai/skill-to-mcp" scripts.skill_to_mcp = "skill_to_mcp.main:run_app" [tool.hatch.build.targets.wheel] packages = [ "src/skill_to_mcp" ] [tool.hatch.envs.default] installer = "uv" features = [ "dev" ] [tool.hatch.envs.docs] features = [ "doc" ] scripts.build = "sphinx-build -M html docs docs/_build -W {args}" scripts.open = "python -m webbrowser -t docs/_build/html/index.html" scripts.clean = "git clean -fdX -- {args:docs}" # Test the lowest and highest supported Python versions with normal deps [[tool.hatch.envs.hatch-test.matrix]] deps = [ "stable" ] python = [ "3.11", "3.13" ] # Test the newest supported Python version also with pre-release deps [[tool.hatch.envs.hatch-test.matrix]] deps = [ "pre" ] python = [ "3.13" ] [tool.hatch.envs.hatch-test] features = [ "test" ] [tool.hatch.envs.hatch-test.overrides] # If the matrix variable `deps` is set to "pre", # set the environment variable `UV_PRERELEASE` to "allow". matrix.deps.env-vars = [ { key = "UV_PRERELEASE", value = "allow", if = [ "pre" ] }, ] [tool.ruff] line-length = 120 src = [ "src" ] extend-include = [ "*.ipynb" ] format.docstring-code-format = true lint.select = [ "B", # flake8-bugbear "BLE", # flake8-blind-except "C4", # flake8-comprehensions "D", # pydocstyle "E", # Error detected by Pycodestyle "F", # Errors detected by Pyflakes "I", # isort "RUF100", # Report unused noqa directives "TID", # flake8-tidy-imports "UP", # pyupgrade "W", # Warning detected by Pycodestyle ] lint.ignore = [ "B008", # Errors from function calls in argument defaults. These are fine when the result is immutable. "D100", # Missing docstring in public module "D104", # Missing docstring in public package "D105", # __magic__ methods are often self-explanatory, allow missing docstrings "D107", # Missing docstring in __init__ # Disable one in each pair of mutually incompatible rules "D203", # We don’t want a blank line before a class docstring "D213", # <> We want docstrings to start immediately after the opening triple quote "D400", # first line should end with a period [Bug: doesn’t work with single-line docstrings] "D401", # First line should be in imperative mood; try rephrasing "E501", # line too long -> we accept long comment lines; formatter gets rid of long code lines "E731", # Do not assign a lambda expression, use a def -> lambda expression assignments are convenient "E741", # allow I, O, l as variable names -> I is the identity matrix ] lint.per-file-ignores."*/__init__.py" = [ "F401" ] lint.per-file-ignores."docs/*" = [ "I" ] lint.per-file-ignores."tests/*" = [ "D" ] lint.pydocstyle.convention = "numpy" [tool.pytest.ini_options] pythonpath = "src" testpaths = [ "tests" ] python_files = "test_*.py" python_functions = "test_*" xfail_strict = true addopts = [ "--import-mode=importlib", # allow using test files with same name ] [tool.coverage.run] source = [ "src/skill_to_mcp" ] omit = [ "*/tests/test_*.py", ]

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/biocontext-ai/skill-to-mcp'

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