[build-system] requires = ["hatchling>=1.27"] build-backend = "hatchling.build" [project] name = "pequod-mcp" version = "0.2.2" description = "SEC-primary-source ETF holdings + identifier crosswalk MCP server (ticker/CUSIP/FIGI resolution, complete N-PORT holdings)" readme = "README.md" requires-python = ">=3.10" license = "Apache-2.0" license-files = ["LICENSE", "NOTICE"] authors = [ { name = "AB Analytics", email = "info@abanalytics.dev" }, ] keywords = [ "mcp", "model-context-protocol", "sec", "edgar", "etf", "holdings", "nport", "openfigi", "figi", "isin", "ticker", "crosswalk", ] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Financial and Insurance Industry", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Office/Business :: Financial :: Investment", ] dependencies = [ "fastmcp>=2.0.0", "requests>=2.28.0", ] [project.optional-dependencies] # Opt-in Yahoo enrichment (set PEQUOD_YAHOO_VERIFY=1); users accept the # Yahoo Finance terms of use themselves. Never used on the default path. yahoo = ["yfinance>=0.2.0"] dev = ["pytest>=8.0"] [project.scripts] pequod-mcp = "pequod_mcp.gam:main" [tool.hatch.build.targets.wheel] packages = ["pequod_mcp"] [tool.hatch.build.targets.sdist] include = [ "pequod_mcp/", "tests/", "README.md", "LICENSE", "NOTICE", ] [tool.pytest.ini_options] testpaths = ["tests"] addopts = "-q"