feat(notion-mcp): add MCP agent tool factories and registry wiring

This commit is contained in:
CREDO23 2026-04-20 21:02:10 +02:00
parent 41d547934d
commit 8d438f52f5
5 changed files with 601 additions and 0 deletions

View file

@ -86,6 +86,11 @@ from .notion import (
create_delete_notion_page_tool,
create_update_notion_page_tool,
)
from .notion_mcp import (
create_page as notion_mcp_create_page_mod,
delete_page as notion_mcp_delete_page_mod,
update_page as notion_mcp_update_page_mod,
)
from .onedrive import (
create_create_onedrive_file_tool,
create_delete_onedrive_file_tool,
@ -316,6 +321,40 @@ BUILTIN_TOOLS: list[ToolDefinition] = [
requires=["db_session", "search_space_id", "user_id"],
),
# =========================================================================
# NOTION MCP TOOLS - MCP-backed variants (disabled until swap)
# These route through Notion's hosted MCP server instead of direct API.
# =========================================================================
ToolDefinition(
name="create_notion_page_mcp",
description="Create a new page in Notion via MCP server",
factory=lambda deps: notion_mcp_create_page_mod.create_create_notion_page_mcp_tool(
db_session=deps["db_session"],
search_space_id=deps["search_space_id"],
user_id=deps["user_id"],
),
requires=["db_session", "search_space_id", "user_id"],
),
ToolDefinition(
name="update_notion_page_mcp",
description="Append new content to an existing Notion page via MCP server",
factory=lambda deps: notion_mcp_update_page_mod.create_update_notion_page_mcp_tool(
db_session=deps["db_session"],
search_space_id=deps["search_space_id"],
user_id=deps["user_id"],
),
requires=["db_session", "search_space_id", "user_id"],
),
ToolDefinition(
name="delete_notion_page_mcp",
description="Delete an existing Notion page via MCP server",
factory=lambda deps: notion_mcp_delete_page_mod.create_delete_notion_page_mcp_tool(
db_session=deps["db_session"],
search_space_id=deps["search_space_id"],
user_id=deps["user_id"],
),
requires=["db_session", "search_space_id", "user_id"],
),
# =========================================================================
# GOOGLE DRIVE TOOLS - create files, delete files
# Auto-disabled when no Google Drive connector is configured (see chat_deepagent.py)
# =========================================================================