feat(MCP): Introduce MCP types, logger, and integration into the application

- Added McpTypes.ts for defining JSON schema and tool information.
- Created ModelType.ts and OneUptimeOperation.ts enums for model types and operations.
- Implemented MCPLogger for structured logging in MCP servers.
- Integrated MCP routes into the main application index.
- Updated package.json to include @modelcontextprotocol/sdk dependency.
- Removed MCP-related configurations from Helm chart and Docker Compose files.
- Added Data Processing Agreement (DPA) page and route to the legal section.
- Updated legal.ejs to include a link to the new DPA page.
This commit is contained in:
Nawaz Dhandala
2026-03-03 11:34:46 +00:00
parent d617b73a5d
commit 560f45f3cc
34 changed files with 3573 additions and 305 deletions

View File

@@ -377,26 +377,6 @@ services:
context: .
dockerfile: ./Telemetry/Dockerfile
mcp:
volumes:
- ./MCP:/usr/src/app:cached
# Use node modules of the container and not host system.
# https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder
- /usr/src/app/node_modules/
- ./Common:/usr/src/Common:cached
- /usr/src/Common/node_modules/
ports:
- '9945:9229' # Debugging port.
extends:
file: ./docker-compose.base.yml
service: mcp
depends_on:
<<: *common-depends-on
build:
network: host
context: .
dockerfile: ./MCP/Dockerfile
# Fluentd. Required only for development. In production its the responsibility of the customer to run fluentd and pipe logs to OneUptime.
# We run this container just for development, to see if logs are piped.