feat: Add Smithery CLI deployment support

- Add smithery package as dependency
- Create smithery_server.py with @smithery.server() decorator
- Add SmitheryConfigSchema for session config (nextcloud_url, username, app_password)
- Add [tool.smithery] section to pyproject.toml
- Remove manual .well-known/mcp-config endpoint (Smithery handles this)

Smithery CLI will automatically:
- Extract config schema from the decorated function
- Handle session config parsing from query parameters
- Make config accessible via ctx.session_config in tools

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Chris Coutinho
2025-11-22 18:05:33 +01:00
co-authored by Claude
parent 8d29ce0122
commit b8dc413b73
4 changed files with 123 additions and 45 deletions
+4
View File
@@ -39,6 +39,7 @@ dependencies = [
"pymupdf>=1.26.6",
"pymupdf4llm>=0.2.2",
"pymupdf-layout>=1.26.6",
"smithery>=0.4.4",
]
classifiers = [
"Development Status :: 4 - Beta",
@@ -132,3 +133,6 @@ name = "testpypi"
url = "https://test.pypi.org/simple/"
publish-url = "https://test.pypi.org/legacy/"
explicit = true
[tool.smithery]
server = "nextcloud_mcp_server.smithery_server:create_server"