fix: add resource and prompt listing endpoints to MCP server

This commit is contained in:
2025-05-04 10:30:40 +00:00
parent 9ec1cd2020
commit 452652a190
3 changed files with 57 additions and 3 deletions

View File

@@ -3,7 +3,7 @@ from typing import Any
from mcp.server import Server
from mcp.server.stdio import stdio_server
from mcp.types import TextContent, Tool
from mcp.types import Prompt, Resource, ResourceTemplate, TextContent, Tool
from airflow_mcp_server.config import AirflowConfig
from airflow_mcp_server.tools.tool_manager import get_airflow_tools, get_tool
@@ -36,6 +36,24 @@ async def serve(config: AirflowConfig) -> None:
logger.error("Failed to list tools: %s", e)
raise
@server.list_resources()
async def list_resources() -> list[Resource]:
"""List available resources (returns empty list)."""
logger.info("Resources list requested - returning empty list")
return []
@server.list_resource_templates()
async def list_resource_templates() -> list[ResourceTemplate]:
"""List available resource templates (returns empty list)."""
logger.info("Resource templates list requested - returning empty list")
return []
@server.list_prompts()
async def list_prompts() -> list[Prompt]:
"""List available prompts (returns empty list)."""
logger.info("Prompts list requested - returning empty list")
return []
@server.call_tool()
async def call_tool(name: str, arguments: dict[str, Any]) -> list[TextContent]:
try:

View File

@@ -3,7 +3,7 @@ from typing import Any
from mcp.server import Server
from mcp.server.stdio import stdio_server
from mcp.types import TextContent, Tool
from mcp.types import Prompt, Resource, ResourceTemplate, TextContent, Tool
from airflow_mcp_server.config import AirflowConfig
from airflow_mcp_server.tools.tool_manager import get_airflow_tools, get_tool
@@ -27,6 +27,24 @@ async def serve(config: AirflowConfig) -> None:
logger.error("Failed to list tools: %s", e)
raise
@server.list_resources()
async def list_resources() -> list[Resource]:
"""List available resources (returns empty list)."""
logger.info("Resources list requested - returning empty list")
return []
@server.list_resource_templates()
async def list_resource_templates() -> list[ResourceTemplate]:
"""List available resource templates (returns empty list)."""
logger.info("Resource templates list requested - returning empty list")
return []
@server.list_prompts()
async def list_prompts() -> list[Prompt]:
"""List available prompts (returns empty list)."""
logger.info("Prompts list requested - returning empty list")
return []
@server.call_tool()
async def call_tool(name: str, arguments: dict[str, Any]) -> list[TextContent]:
try:

View File

@@ -3,7 +3,7 @@ from typing import Any
from mcp.server import Server
from mcp.server.stdio import stdio_server
from mcp.types import TextContent, Tool
from mcp.types import Prompt, Resource, ResourceTemplate, TextContent, Tool
from airflow_mcp_server.config import AirflowConfig
from airflow_mcp_server.tools.tool_manager import get_airflow_tools, get_tool
@@ -27,6 +27,24 @@ async def serve(config: AirflowConfig) -> None:
logger.error("Failed to list tools: %s", e)
raise
@server.list_resources()
async def list_resources() -> list[Resource]:
"""List available resources (returns empty list)."""
logger.info("Resources list requested - returning empty list")
return []
@server.list_resource_templates()
async def list_resource_templates() -> list[ResourceTemplate]:
"""List available resource templates (returns empty list)."""
logger.info("Resource templates list requested - returning empty list")
return []
@server.list_prompts()
async def list_prompts() -> list[Prompt]:
"""List available prompts (returns empty list)."""
logger.info("Prompts list requested - returning empty list")
return []
@server.call_tool()
async def call_tool(name: str, arguments: dict[str, Any]) -> list[TextContent]:
try: