Skip to main content
Glama

Genkit MCP

Official
by firebase
pyproject.toml6.49 kB
[project] dependencies = [ "dotpromptz", "genkit", "genkit-plugin-dev-local-vectorstore", "genkit-plugin-compat-oai", "genkit-plugin-firebase", "genkit-plugin-flask", "genkit-plugin-google-genai", "genkit-plugin-google-cloud", "genkit-plugin-ollama", "genkit-plugin-vertex-ai", "liccheck>=0.9.2", "strenum>=0.4.15; python_version < '3.11'", ] description = "Workspace for Genkit packages" license = { text = "Apache-2.0" } name = "genkit-workspace" readme = "README.md" requires-python = ">=3.10" version = "0.1.0" [dependency-groups] dev = [ "bpython>=0.25", "ipython~=8.22; python_version <= '3.10'", "ipython~=9.0.2; python_version >= '3.11'", "jupyter>=1.1.1", "pytest-asyncio>=0.25.3", "pytest>=8.3.4", "pytest-cov>=6.0.0", "datamodel-code-generator>=0.27.3", "pytest-watcher>=0.4.3", "pytest-mock>=3.14.0", "twine>=6.1.0", "poethepoet>=0.33.1", "pip>=25.0.1", "tox>=4.25.0", "tox-uv>=1.25.0", "nox>=2025.2.9", "nox-uv>=0.2.2", ] lint = ["mypy>=1.15", "ruff>=0.9"] [tool.hatch.build.targets.wheel] packages = [] [tool.setuptools] py-modules = [] # Pytest for unit testing and coverage. [tool.pytest] [tool.pytest.ini_options] addopts = [ "--cov", #"--cov-report=", # Disable terminal report generation by pytest-cov "-ra", "-vv", ] asyncio_default_fixture_loop_scope = "session" python_files = ["test_*.py", "*_test.py"] testpaths = ["packages", "plugins", "samples", "tests"] #asyncio_mode = "auto" asyncio_mode = "strict" [tool.coverage.report] fail_under = 78 [tool.coverage.run] omit = [ "**/__init__.py", # Often contains just imports "**/testing.py", # Test utilities "**/constants.py", # Typically just constants "**/typing.py", # Often auto-generated or complex types "**/types.py", # Often auto-generated or complex types ] # uv based package management. [tool.uv] default-groups = ["dev", "lint"] [tool.uv.sources] dotpromptz = { git = "https://github.com/google/dotprompt.git", subdirectory = "python/dotpromptz", rev = "main" } genkit = { workspace = true } genkit-plugin-compat-oai = { workspace = true } genkit-plugin-dev-local-vectorstore = { workspace = true } genkit-plugin-firebase = { workspace = true } genkit-plugin-flask = { workspace = true } genkit-plugin-google-cloud = { workspace = true } genkit-plugin-google-genai = { workspace = true } genkit-plugin-ollama = { workspace = true } genkit-plugin-vertex-ai = { workspace = true } google-genai-hello = { workspace = true } google-genai-image = { workspace = true } [tool.uv.workspace] members = ["packages/*", "plugins/*", "samples/*"] # Ruff checks and formatting. [tool.ruff] exclude = [ ".bzr", ".direnv", ".eggs", ".git", ".git-rewrite", ".hg", ".ipynb_checkpoints", ".mypy_cache", ".nox", ".pants.d", ".pyenv", ".pytest_cache", ".pytype", ".ruff_cache", ".svn", ".tox", ".venv", ".vscode", "__pypackages__", "_build", "bazel-*", "buck-out", "build", "dist", "node_modules", "site-packages", "venv", ] indent-width = 4 line-length = 120 preview = true target-version = "py311" # NOTE: Keep this at 3.11 not 3.10. We use backported libs for enums. unsafe-fixes = true [tool.ruff.lint] fixable = ["ALL"] select = [ "E", # pycodestyle (errors) "W", # pycodestyle (warnings) "F", # pyflakes "I", # isort (import sorting) "UP", # pyupgrade (Python version upgrades) "B", # flake8-bugbear (common bugs) "N", # pep8-naming (naming conventions) "D", # pydocstyle "F401", # unused imports "F403", # wildcard imports "F841", # unused variables ] [tool.ruff.lint.isort] combine-as-imports = true force-single-line = false known-first-party = ["genkit"] section-order = [ "future", "standard-library", "third-party", "first-party", "local-folder", ] [tool.ruff.lint.pydocstyle] convention = "google" [tool.ruff.format] docstring-code-format = true docstring-code-line-length = 120 indent-style = "space" line-ending = "lf" quote-style = "single" skip-magic-trailing-comma = false # Static type checking. [tool.mypy] disallow_incomplete_defs = true disallow_untyped_defs = true exclude = ["samples/"] explicit_package_bases = true mypy_path = [ "packages/genkit/src", "plugins/chroma/src", "plugins/compat-oai/src", "plugins/dev-local-vectorstore/src", "plugins/firebase/src", "plugins/flask/src", "plugins/google-cloud/src", "plugins/google-genai/src", "plugins/ollama/src", "plugins/pinecone/src", "plugins/vertex-ai/src", ] namespace_packages = true strict = true warn_unused_configs = true [tool.datamodel-codegen] #collapse-root-models = true # Don't use; produces Any as types. #strict-types = ["str", "int", "float", "bool", "bytes"] # Don't use; produces StrictStr, StrictInt, etc. #use-subclass-enum = true capitalize-enum-members = true disable-timestamp = true enable-version-header = true field-constraints = true input = "../genkit-tools/genkit-schema.json" input-file-type = "jsonschema" output = "packages/genkit/src/genkit/core/typing.py" output-model-type = "pydantic_v2.BaseModel" snake-case-field = true strict-nullable = true target-python-version = "3.11" use-default = false use-schema-description = true use-standard-collections = true use-subclass-enum = true use-union-operator = true use-unique-items-as-set = true [tool.liccheck] authorized_licenses = [ "3-clause bsd", "apache 2.0", "apache software license", "apache software", "apache", "apache-2.0", "bsd license", "bsd-3-clause", "bsd", "cmu license (mit-cmu)", "isc license (iscl)", "isc license", "mit license", "mit", "mit-cmu", "new bsd license", "new bsd", "psf-2.0", "python software foundation license", "simplified bsd", "the unlicense (unlicense)", # TODO: verify. ] dependencies = true unauthorized_licenses = [ "gnu lgpl", "gpl v3", "lgpl with exceptions or zpl", "zpl 2.1", "mpl", ] [tool.liccheck.authorized_packages] certifi = "2025.4.26" # TODO: Verify. dependencies = true ollama = "0.5.1" # MIT "https://github.com/ollama/ollama-python/blob/main/LICENSE"

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/firebase/genkit'

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