JR

jlokos/raybridge

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

37 stars 3 forks Качество 61 Тренд 12MIT

MCP-сервер, который соединяет расширения Raycast с любым MCP-совместимым клиентом

Обзор

MCP-сервер, который соединяет расширения Raycast с любым MCP-совместимым клиентом. Обнаруживает локально установленные расширения Raycast, загружает их определения инструментов и обслуживает их по протоколу Model Context через stdio или HTTP. 1. Сканирование ~/.config/raycast/extensions/ для установленных расширений с определениями инструментов 2. Загружает токены OAuth из зашифрованной базы данных SQLite 3 компании Raycast. Регистрирует инструменты как инструменты MCP, доступные любому клиенту MCP. Поддерживаются расширения, использующие API-интерфейсы Raycast UI (список, детали, форма и т. Д.) - компоненты пользовательского интерфейса сведены к no-ops, поэтому логика базового инструмента может выполняться без головы. Расширения, инструменты которых выполняют фоновую работу (звонки API, поиск данных, преобразования), работают лучше всего. - Bun - Raycast, установленный с расширениями - sqlcipher CLI (для доступа к токенам OAuth): варить установить sqlcipher Сервер также может работать как HTTP-сервер для удаленных MCP-клиентов.

Обзор (машинный перевод)

MCP-сервер, который соединяет расширения Raycast с любым MCP-совместимым клиентом.

Обнаруживает локально установленные расширения Raycast, загружает их определения инструментов и обслуживает их по протоколу Model Context через stdio или HTTP.

Как это работает

  1. Сканирование ~/.config/raycast/extensions/ для установленных расширений с tools определениями
  2. Загружает токены OAuth из зашифрованной базы данных SQLite Raycast
  3. Регистрирует инструменты как инструменты MCP, доступные любому клиенту MCP

Поддерживаются расширения, использующие API-интерфейсы Raycast UI (List, Detail, Form и т. д.) — компоненты пользовательского интерфейса переключаются на no-ops, поэтому логика базового инструмента может выполняться без головы. Расширения, инструменты которых выполняют фоновую работу (звонки API, поиск данных, преобразования), работают лучше всего.

Настройка

Предпосылки

  • Бан
  • Raycast установлен с расширениями sqlcipher CLI (для доступа к токенам OAuth): brew install sqlcipher

###Установить

Настройка MCP-клиента

Код Клода ([T7]):

Курсор ([8]):

HTTP-перевозки

Сервер также может работать как HTTP-сервер для удаленных MCP-клиентов.

** Запуск сервера:**

** Конечные точки:**

| Конечная точка | Метод | Описание

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

RayBridge

MCP server that bridges Raycast extensions to any MCP-compatible client.

Discovers locally installed Raycast extensions, loads their tool definitions, and serves them over the Model Context Protocol via stdio or HTTP.

How it works

  1. Scans ~/.config/raycast/extensions/ for installed extensions with tools definitions
  2. Loads OAuth tokens from Raycast’s encrypted SQLite database
  3. Registers tools as MCP tools accessible to any MCP client

Extensions that use Raycast UI APIs (List, Detail, Form, etc.) are supported — the UI components are shimmed to no-ops so the underlying tool logic can execute headlessly. Extensions whose tools perform background work (API calls, data lookups, transformations) work best.

Setup

Prerequisites

  • Bun
  • Raycast installed with extensions
  • sqlcipher CLI (for OAuth token access): brew install sqlcipher

Install

bun install

Configure MCP client

Claude Code (~/.claude/settings.json):

{
  "mcpServers": {
    "raybridge": {
      "command": "bun",
      "args": ["run", "src/index.ts"],
      "cwd": "/path/to/raybridge"
    }
  }
}

Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "raybridge": {
      "command": "bun",
      "args": ["run", "src/index.ts"],
      "cwd": "/path/to/raybridge"
    }
  }
}

HTTP Transport

The server can also run as an HTTP server for remote MCP clients.

Start the server:

# Default: http://0.0.0.0:3000
bun run start:http

# Custom host/port
MCP_PORT=8080 MCP_HOST=0.0.0.0 bun run start:http

# With API key authentication
MCP_API_KEY=your-secret-key bun run start:http

# CLI flags also work
bun run src/index.ts --http --port 8080 --host 0.0.0.0

Endpoints:

Endpoint Method Description
/health GET Health check (no auth required)
/mcp POST MCP requests (requires auth if MCP_API_KEY set)
/mcp DELETE Terminate session

Authentication:

When MCP_API_KEY is set, requests to /mcp must include a Bearer token (per MCP spec):

Authorization: Bearer your-secret-key

Example session:

# 1. Initialize session (capture session ID from response header)
curl -X POST http://127.0.0.1:3000/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer your-secret-key" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{
    "protocolVersion":"2024-11-05",
    "capabilities":{},
    "clientInfo":{"name":"my-client","version":"1.0"}
  }}'
# Response includes: mcp-session-id header

# 2. List available tools
curl -X POST http://127.0.0.1:3000/mcp \
  -H "Content-Type: application/json" \
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "raybridge": { "command": "bun", "args": ["run", "src/index.ts"], "cwd": "/path/to/raybridge" } } }