Add tooling and configuration for deploying the Graphiti MCP server to FastMCP Cloud with Neo4j or FalkorDB backends. Changes: - Add DATABASE_PROVIDER env var support in config.yaml for runtime database selection (neo4j or falkordb) - Add EMBEDDING_DIM, EMBEDDER_PROVIDER, EMBEDDER_MODEL env var support for embedder configuration - Add python-dotenv and pydantic to pyproject.toml dependencies - Bump version to 1.0.2 - Rewrite .env.example with comprehensive documentation for both local development and FastMCP Cloud deployment - Add verification script (scripts/verify_fastmcp_cloud_readiness.py) that checks 6 deployment prerequisites - Add deployment guide (docs/FASTMCP_CLOUD_DEPLOYMENT.md) The server can now be configured entirely via environment variables, making it compatible with FastMCP Cloud which ignores config files. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
78 lines
1.5 KiB
TOML
78 lines
1.5 KiB
TOML
[project]
|
|
name = "mcp-server"
|
|
version = "1.0.2"
|
|
description = "Graphiti MCP Server"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10,<4"
|
|
dependencies = [
|
|
"fastmcp>=2.13.3",
|
|
"openai>=1.91.0",
|
|
"graphiti-core[falkordb]>=0.23.1",
|
|
"pydantic>=2.0.0",
|
|
"pydantic-settings>=2.0.0",
|
|
"pyyaml>=6.0",
|
|
"python-dotenv>=1.0.0",
|
|
"typing-extensions>=4.0.0",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
azure = [
|
|
"azure-identity>=1.21.0",
|
|
]
|
|
providers = [
|
|
"google-genai>=1.8.0",
|
|
"anthropic>=0.49.0",
|
|
"groq>=0.2.0",
|
|
"voyageai>=0.2.3",
|
|
"sentence-transformers>=2.0.0",
|
|
]
|
|
|
|
[tool.pyright]
|
|
include = ["src", "tests"]
|
|
pythonVersion = "3.10"
|
|
typeCheckingMode = "basic"
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
# pycodestyle
|
|
"E",
|
|
# Pyflakes
|
|
"F",
|
|
# pyupgrade
|
|
"UP",
|
|
# flake8-bugbear
|
|
"B",
|
|
# flake8-simplify
|
|
"SIM",
|
|
# isort
|
|
"I",
|
|
]
|
|
ignore = ["E501"]
|
|
|
|
[tool.ruff.lint.flake8-tidy-imports.banned-api]
|
|
# Required by Pydantic on Python < 3.12
|
|
"typing.TypedDict".msg = "Use typing_extensions.TypedDict instead."
|
|
|
|
[tool.ruff.format]
|
|
quote-style = "single"
|
|
indent-style = "space"
|
|
docstring-code-format = true
|
|
|
|
[tool.uv.sources]
|
|
graphiti-core = { path = "../", editable = true }
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"faker>=37.12.0",
|
|
"httpx>=0.28.1",
|
|
"psutil>=7.1.2",
|
|
"pyright>=1.1.404",
|
|
"pytest>=8.0.0",
|
|
"pytest-asyncio>=0.21.0",
|
|
"pytest-timeout>=2.4.0",
|
|
"pytest-xdist>=3.8.0",
|
|
"ruff>=0.7.1",
|
|
]
|