* @brief Handle resources/subscribe request */
| 427 | * @brief Handle resources/subscribe request |
| 428 | */ |
| 429 | API::MCP::MCPResponse API::MCPHandler::handleResourcesSubscribe(const MCP::MCPRequest& request, |
| 430 | const QString& sessionId) |
| 431 | { |
| 432 | const auto uri = request.params.value(QStringLiteral("uri")).toString(); |
| 433 | |
| 434 | if (uri.isEmpty()) { |
| 435 | return MCP::MCPResponse::makeError( |
| 436 | request.id, MCP::ErrorCode::InvalidParams, QStringLiteral("Missing resource URI")); |
| 437 | } |
| 438 | |
| 439 | auto& session = m_sessions[sessionId]; |
| 440 | if (!session.subscribedResources.contains(uri)) |
| 441 | session.subscribedResources.append(uri); |
| 442 | |
| 443 | return MCP::MCPResponse::makeSuccess(request.id, QJsonObject()); |
| 444 | } |
| 445 | |
| 446 | /** |
| 447 | * @brief Handle resources/unsubscribe request |
nothing calls this directly
no test coverage detected