Skip to main content
Glama
s3hq4y
by s3hq4y

Portal

Portal

English · 简体中文

Portal — это расширение VS Code, которое представляет текущее рабочее пространство как публичный MCP-эндпоинт. Оно намеренно минималистично: только команды и передача файлов.

Что вы получаете

Поверхность

Назначение

MCP Streamable HTTP

https://<tunnel>/mcp/<token>

File HTTP API

https://<tunnel>/files/<token>/… (тот же токен)

Sidebar + настройки

Плоская панель в стиле Win10: запуск/остановка, копирование URL, состояние туннеля

Терминал Portal Agent

Необязательное живое зеркало ввода/вывода run_command

Related MCP server: local-bridge

Инструменты MCP (ровно пять)

Инструмент

Назначение

run_command

Команда на переднем плане. Тайм-аут по умолчанию — 120s (макс. 600s). Используйте command + shell, или execute + args (можно обойтись без синтаксиса оболочки).

start_command

Запускает длительный процесс. Возвращает command_id и PID. До четырёх одновременных задач.

read_command

Инкрементальное чтение stdout/stderr по смещению. Опустите command_id, чтобы получить список сохранённых задач. Завершённые записи удаляются через 10 минут.

stop_command

Остановить фоновое задание и его дерево процессов (force пропускает 2-секундное окно корректного завершения).

file_transfer_info

Публичный базовый URL файлового API, ограничение размера и curl-примеры.

Командные оболочки: powershell (по умолчанию в Windows), pwsh, cmd, bash / sh (Git Bash при наличии). UTF-8 настраивается автоматически.

Сессии — повторно используйте Mcp-Session-Id из initialize. Если он потерян или отклонён, снова выполните initialize — не изобретайте собственный ID.

Здесь нет инструментов read_file / write_file / edit_file / list_* / search_files. Читать и записывать можно через оболочку или HTTP-интерфейс файлов.

Передача файлов (двунаправленный HTTP)

Тот же туннель и токен, что и для MCP. Максимальный размер по умолчанию: 64 МиБ (portal.maxTransferBytes). Загрузка атомарно заменяет файл. Скачивание поддерживает заголовок Range и возвращает SHA-256.

GET    {base}?op=info              capability + workspace
GET    {base}?glob=**/*            list files
GET    {base}/<relpath>            download
HEAD   {base}/<relpath>            metadata
PUT    {base}/<relpath>            upload
DELETE {base}/<relpath>            delete
POST   {base}?op=pack              zip  JSON { "paths": ["src"] }
POST   {base}?op=unpack&dest=.     unzip (raw zip body)

Для бесплатных доменов ngrok требуется заголовок ngrok-skip-browser-warning: 1.

# download
curl -fsSL -H "ngrok-skip-browser-warning: 1" \
  "$BASE/README.md" -o README.md

# upload
curl -fsSL -H "ngrok-skip-browser-warning: 1" \
  -T ./photo.png "$BASE/incoming/photo.png"

# pack a folder
curl -fsSL -H "ngrok-skip-browser-warning: 1" \
  -H "Content-Type: application/json" \
  -d '{"paths":["src"]}' "$BASE?op=pack" -o src.zip

Провайдеры туннелей

Провайдер

URL

Примечания

cloudflare-quick (по умолчанию)

новый случайный домен trycloudflare.com при каждом запуске

Быстро попробовать; нестабильно

cloudflare-named

фиксированный hostname

нужен сохранённый токен туннеля, публичный hostname, фиксированный локальный порт

ngrok-reserved

зарезервированный домен (например, *.ngrok-free.dev)

Постоянный URL

custom

ваша команда или существующий URL

Плейсхолдеры: {{port}} {{token}} {{workspace}}. Пустая команда + customTunnelUrl = режим подключения

Токен маршрута — эта секретный сегмент пути. MCP доступен по /mcp/<token>. Оставьте portal.routeToken пустым, чтобы сгенерировать его при запуске.

Команды (палитра)

  • Portal: Запуск / Остановка

  • Portal: Скопировать URL

  • Portal: Проверить туннель

  • Portal: Настройки

  • Portal: Установить cloudflared / Установить/Обновить ngrok

  • Portal: Показать журнал / Показать терминал агента

Полезные настройки: portal.startOnActivation (включено по умолчанию), portal.showCommandsInTerminal, portal.localPort (0 = авто, кроме именованного Cloudflare).

Сборка

Требуется Node 18+ и VS Code ^1.95.0.

npm install
npm run build      # esbuild → dist/extension.js
npm run typecheck
npm run package    # .vsix (no bundled node_modules)

Загрузите упакованный VSIX или запустите расширение в настольном VS Code (extensionKind: ui + workspace).

Лицензия

MIT

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Connects local tools (browser, shell) to a remote MCP server via reverse-MCP, enabling the server agent to control your local browser and execute shell commands.
    237
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Exposes a local development project as a secure MCP server over a stable HTTPS URL via Cloudflare tunnel, with configurable access permissions and 33 development tools for file, command, Git, and process operations.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables remote MCP clients like ChatGPT to run shell commands and manage files on your local machine via a Cloudflare tunnel, exposing tools for file operations, search, and task management.
    MIT

View all related MCP servers

Related MCP Connectors

  • A MCP server built for developers enabling Git based project management with project and personal…

  • An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform

  • MCP server for interacting with the Supabase platform

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/s3hq4y/portal'

If you have feedback or need assistance with the MCP directory API, please join our Discord server