We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tylerburleigh/foundry-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "foundry-mcp"
version = "0.16.0"
description = "MCP server for spec-driven development management"
readme = "README.md"
license = "MIT"
requires-python = ">=3.10"
authors = [
{ name = "Tyler Burleigh" }
]
keywords = ["mcp", "foundry", "specification", "spec-driven-development"]
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
]
dependencies = [
"fastmcp>=0.1.0",
"mcp>=1.0.0",
"click>=8.0.0",
"tomli>=2.0.0; python_version < '3.11'",
"filelock>=3.20.1",
"python-ulid>=2.0.0",
"rich>=13.0.0",
]
[project.optional-dependencies]
test = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.0",
"pytest-xdist>=3.0.0",
"jsonschema>=4.0.0",
"hypothesis>=6.0.0",
]
tracing = [
"opentelemetry-sdk>=1.20.0",
"opentelemetry-exporter-otlp>=1.20.0",
]
metrics = [
"prometheus-client>=0.17.0",
]
pdf = [
"pdfminer.six>=20221105",
"pypdf>=5.0.0",
]
observability = [
"foundry-mcp[tracing,metrics]",
]
dev = [
"ruff>=0.9.0,<0.10",
"pyright>=1.1.390",
"foundry-mcp[test]",
]
[project.scripts]
foundry-mcp = "foundry_mcp.server:main"
foundry = "foundry_mcp.cli.main:cli"
foundry-cli = "foundry_mcp.cli.main:cli"
[project.urls]
Homepage = "https://github.com/tylerburleigh/foundry-mcp"
Repository = "https://github.com/tylerburleigh/foundry-mcp"
[tool.hatch.build.targets.wheel]
packages = ["src/foundry_mcp"]
[tool.hatch.build.targets.wheel.force-include]
"samples/foundry-mcp.toml" = "foundry_mcp/resources/default-config.toml"
[tool.pyright]
pythonVersion = "3.10"
include = ["src"]
exclude = ["**/__pycache__"]
typeCheckingMode = "basic"
reportMissingImports = "warning"
[tool.ruff]
target-version = "py310"
line-length = 120
src = ["src", "tests"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
docstring-code-format = true
[tool.ruff.lint]
select = ["F", "E", "W", "I", "B"]
ignore = ["E501", "E402"]
[tool.ruff.lint.isort]
known-first-party = ["foundry_mcp"]
[tool.ruff.lint.per-file-ignores]
"tests/**" = ["B007", "B017", "B023", "B028", "E721", "E731", "F401", "F841"]