diff --git a/npm/yutu/package.json b/npm/yutu/package.json index c0eb073..5435f2e 100644 --- a/npm/yutu/package.json +++ b/npm/yutu/package.json @@ -1,6 +1,7 @@ { "name": "@eat-pray-ai/yutu", "version": "0.0.0", + "mcpName": "io.github.eat-pray-ai/yutu", "description": "The AI-powered toolkit that grows your YouTube channel on autopilot", "repository": { "type": "git", diff --git a/server.json b/server.json index 3b0cd82..4c1ba81 100644 --- a/server.json +++ b/server.json @@ -2,7 +2,7 @@ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json", "title": "yutu", "name": "io.github.eat-pray-ai/yutu", - "description": "A fully functional MCP server and CLI for YouTube", + "description": "The AI-powered toolkit that grows your YouTube channel on autopilot", "icons": [ { "mimeType": "image/svg+xml", @@ -20,52 +20,64 @@ "version": "0.0.0-dev", "packages": [ { - "registryType": "oci", - "identifier": "ghcr.io/eat-pray-ai/yutu:0.0.0-dev", + "registryType": "npm", + "registryBaseUrl": "https://registry.npmjs.org", + "identifier": "@eat-pray-ai/yutu", + "version": "0.0.0-dev", "transport": { - "type": "streamable-http", - "url": "http://localhost:8216/mcp" + "type": "stdio" }, - "runtimeArguments": [ + "packageArguments": [ { - "type": "named", - "name": "--user", - "value": "{user}:{group}", - "description": "UID and GID in the container to match host user", - "isRepeated": false, - "isRequired": false, - "variables": { - "user": { - "description": "The current user, output of `id -u`" - }, - "group": { - "description": "The current user's primary group, output of `id -g`" - } - } + "type": "positional", + "value": "mcp" }, { "type": "named", - "name": "--mount", - "value": "type=bind,source={hostPath},target=/app", - "description": "Mount host directory containing credentials and token", - "isRepeated": false, - "isRequired": false, - "variables": { - "hostPath": { - "description": "The directory containing `client_secret.json` and `youtube.token.json`" - } - } - }, - { - "type": "named", - "name": "-p", - "value": "8216:8216", - "description": "Publish MCP server port", - "isRepeated": false, - "isRequired": true + "name": "--mode", + "value": "stdio" } ], - "runtimeHint": "docker", + "environmentVariables": [ + { + "description": "GCP project credential for yutu, base64 encoded JSON or path to JSON file", + "isRequired": true, + "format": "string", + "isSecret": true, + "name": "YUTU_CREDENTIAL" + }, + { + "description": "YouTube authentication token, base64 encoded JSON or path to JSON file", + "isRequired": true, + "format": "string", + "isSecret": true, + "name": "YUTU_CACHE_TOKEN" + }, + { + "description": "Log level", + "isRequired": false, + "format": "string", + "isSecret": false, + "name": "YUTU_LOG_LEVEL", + "default": "INFO", + "choices": [ + "DEBUG", + "INFO", + "WARNING", + "ERROR" + ] + } + ] + }, + { + "registryType": "npm", + "registryBaseUrl": "https://registry.npmjs.org", + "identifier": "@eat-pray-ai/yutu", + "version": "0.0.0-dev", + "transport": { + "type": "streamable-http", + "url": "http://localhost:{--port}/mcp" + }, "packageArguments": [ { "type": "positional", @@ -75,6 +87,12 @@ "type": "named", "name": "--mode", "value": "http" + }, + { + "type": "named", + "name": "--port", + "description": "Port to listen on for HTTP mode", + "default": "8216" } ], "environmentVariables": [