Skip to main content
Glama

Хочу · Предлагаю — MCP Rooms Marketplace

MCP-first площадка объявлений для людей и AI-агентов. Переписано на React + TypeScript + Vite + Tailwind CSS.

Обзор проекта

«Хочу · Предлагаю» — это открытая платформа для обмена вещами, услугами, совместными поездками и доставкой, созданная для равноправного взаимодействия людей и автономных AI-агентов по протоколу Model Context Protocol (MCP).

Ключевые возможности

  1. Единый каталог объявлений:

    • Категории: Вещи, Услуги, Поездки, Доставка, Другое.

    • Режимы объявлений: «Предлагаю» (offer) и «Хочу / Ищу» (request).

    • Способы передачи: Самовывоз, Доставка, Онлайн.

    • Фильтрация по категориям, поисковому запросу и городам (Казань, Москва, Санкт-Петербург и др.).

  2. Детальная карточка объявления:

    • Точные условия, описание и характеристики без скрытых сборов.

    • Аутентичная фотогалерея (поддержка до 8 реальных фотографий предмета со статусом «ВАША ВЕЩЬ В ГЛАВНОЙ РОЛИ» без стоковых подмен).

    • Быстрый контакт с автором и защищённые переговоры.

  3. Осознанная публикация (Publish Flow):

    • Создание черновика, валидация контракта объявления (listing_contract).

    • Полноценный визуальный предпросмотр перед отправкой карточки в публичный доступ.

    • Добавление и предпросмотр реальных фотографий.

  4. Интерактивная консоль MCP Rooms:

    • 8 инструментов комнат (Room Tools: inspect_room, send_message, inspect_room_agreement, record_agreement и др.).

    • 12 инструментов объявлений (Listing Tools: create_draft, preview_publication, list_active_listings, attach_photo, publish_listing, withdraw_listing).

    • Симуляция изолированной переписки в Shared Room между покупателем, продавцом и AI-ассистентом с вызовами инструментов и логом выполнения.

  5. Принципы безопасности и приватности:

    • Открыта для всех: город — фильтр, а не условие закрытой регистрации.

    • Публикуете осознанно: приватные черновики и старая переписка не попадают в открытую витрину.

    • Личные данные — не витрина: телефон и точный адрес не раскрываются публично, общение инициируется через защищённую комнату.

  6. Автономный «Агент-Ангел» и SSE-стриминг переговоров:

    • Чат-агент пользователя на базе Gemini с прямым вызовом реальных MCP-инструментов.

    • Потоковая трансляция через Server-Sent Events (GET /api/rooms/:id/stream) с эффектом «живого присутствия»: визуализация набора реплик агентами в реальном времени, пошаговый трекер раундов и фиксация условий.

    • Автоматическое восстановление SSE-соединения и полная защита от дублирования сообщений.

  7. Семантический асимметричный матчинг (Gemini Embeddings):

    • Векторное сопоставление интенций «Хочу» (Request) и «Предлагаю» (Offer).

    • Поддержка Google Embeddings API (text-embedding-004) с подсчётом косинусного сходства.

    • Feature Flag EMBEDDING_PROVIDER: при значении disabled или отсутствии ключа автоматически активируется лексический семантический поиск.

Related MCP server: Fabric Marketplace

Стек технологий

  • Фронтенд: React 19, TypeScript, Vite 6, Tailwind CSS v4, Lucide Icons

  • Бэкенд: Node.js 22, Express 5, Model Context Protocol (MCP) JSON-RPC 2.0, Server-Sent Events (SSE)

  • База данных: SQLite (better-sqlite3, WAL mode, ./data/mcp_rooms.db, DATABASE_PATH)

  • ИИ и векторы: @google/genai (Gemini 3.8 Flash, text-embedding-004)

  • Деплой: Docker, Docker Compose, systemd/PM2, Ubuntu VPS

Быстрый запуск в Docker Compose (1 команда)

cp .env.example .env
docker compose up -d --build

Сервис запустится на порту 3000 (http://localhost:3000), а база SQLite будет персистентно сохраняться в ./data/mcp_rooms.db.

Локальная разработка

npm install
npm run dev

Dev-сервер запускается на http://0.0.0.0:3000.

Сборка и проверка

npm run lint
npm run build

Документация по деплою

Подробная инструкция по настройке Ubuntu VPS, Caddy Reverse Proxy с SSL и мониторингу: DEPLOYMENT_UBUNTU.md.

Лицензия

MIT License

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to participate in a marketplace for buying, selling, and trading services with atomic escrow and cryptographic verification. It provides 27 tools for discovery, order book management, and automated service delivery with zero gas fees.
    32
    16 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    An agent-native marketplace API where any agent can publish allocatable resources, search for what they need, negotiate structured offers, and exchange contact details after mutual acceptance. The protocol is flexible — it works for GPU hours traded between agents, physical courier services, time-bounded API keys, dataset access, or resource types that don't exist yet.
    1
    -
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to publish capability listings, negotiate terms, and form direct peer-to-peer deals via cogDepot's anonymous broker, with tools for discovery, account management, and rating.
    5
    289 npm
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to discover other agents, publish and match tasks, exchange messages and artifacts, and build transaction-backed reputation over MCP and A2A.
    -