MCP Bridge for Claude Code with Multi-Model Support. Install globally: claude mcp add --scope user stravinsky -- uvx stravinsky. Add to CLAUDE.md: See https://pypi.org/project/stravinsky/
Project description
Stravinsky
The Avant-Garde MCP Bridge for Claude Code
Movement • Rhythm • Precision
What is Stravinsky?
Multi-model AI orchestration with OAuth authentication for Claude Code.
Features
- 🔐 OAuth Authentication - Secure browser-based auth for Google (Gemini) and OpenAI (ChatGPT)
- 🤖 Multi-Model Support - Seamlessly invoke Gemini and GPT models from Claude
- 🛠️ 31 MCP Tools - Model invocation, code search, LSP integrations, session management, and more
- 🧠 7 Specialized Agents - Stravinsky (orchestrator), Delphi (advisor), Dewey (documentation), and more
- 🔄 Background Tasks - Spawn parallel agents with full tool access via Claude Code CLI
- 📝 LSP Integration - Full Language Server Protocol support for Python (jedi)
- 🔍 AST-Aware Search - Structural code search and refactoring with ast-grep
Quick Start
Installation
From PyPI (Recommended):
# One-shot with uvx - no installation needed!
claude mcp add stravinsky -- uvx stravinsky
# Or install globally first:
uv tool install stravinsky
claude mcp add stravinsky -- stravinsky
From Source (for development):
uv tool install --editable /path/to/stravinsky
claude mcp add stravinsky -- stravinsky
Authentication
# Login to Google (Gemini)
stravinsky-auth login gemini
# Login to OpenAI (ChatGPT Plus/Pro required)
stravinsky-auth login openai
# Check status
stravinsky-auth status
# Logout
stravinsky-auth logout gemini
### Repo Auto-Initialization
Bootstrap any repository for Stravinsky in one command:
```bash
# In the root of your project:
stravinsky-auth init
This will:
- Create/Update
CLAUDE.mdwith Stravinsky parallel execution rules. - Install standard slash commands into
.claude/commands/stra/.
## Add to Your CLAUDE.md
After installing globally, add this to your project's `CLAUDE.md`:
```markdown
## Stravinsky MCP (Parallel Agents)
Use Stravinsky MCP tools. **DEFAULT: spawn parallel agents for multi-step tasks.**
### Agent Tools
- `agent_spawn(prompt, agent_type, description)` - Spawn background agent with full tool access
- `agent_output(task_id, block)` - Get results (block=True to wait)
- `agent_progress(task_id)` - Check real-time progress
- `agent_list()` - Overview of all running agents
- `agent_cancel(task_id)` - Stop a running agent
### Agent Types
- `explore` - Codebase search, "where is X?" questions
- `dewey` - Documentation research, implementation examples
- `frontend` - UI/UX work, component design
- `delphi` - Strategic advice, architecture review
### Parallel Execution (MANDATORY)
For ANY task with 2+ independent steps:
1. **Immediately use agent_spawn** for each independent component
2. Fire all agents simultaneously, don't wait
3. Monitor with agent_progress, collect with agent_output
### ULTRATHINK / ULTRAWORK
- **ULTRATHINK**: Engage exhaustive deep reasoning, multi-dimensional analysis
- **ULTRAWORK**: Maximum parallel execution - spawn agents aggressively for every subtask
Tools (31)
| Category | Tools |
|---|---|
| Model Invoke | invoke_gemini, invoke_openai, get_system_health |
| Environment | get_project_context, task_spawn, task_status, task_list |
| Agents | agent_spawn, agent_output, agent_cancel, agent_list, agent_progress |
| Code Search | ast_grep_search, ast_grep_replace, grep_search, glob_files |
| LSP | lsp_diagnostics, lsp_hover, lsp_goto_definition, lsp_find_references, etc. |
| Sessions | session_list, session_read, session_search |
| Skills | skill_list, skill_get |
Agent Prompts (7)
| Prompt | Purpose |
|---|---|
stravinsky |
Task orchestration, planning, and goal-oriented execution. |
delphi |
Strategic technical advisor (GPT-based) for hard debugging. |
dewey |
Documentation and multi-repository research specialist. |
explore |
Specialized for codebase-wide search and structural analysis. |
frontend |
UI/UX Engineer (Gemini-optimized) for component prototyping. |
document_writer |
Technical documentation and specification writer. |
multimodal |
Visual analysis expert for UI screenshots and diagrams. |
Development
# Install in development mode
uv pip install -e .
# Run server
stravinsky
Project Structure
stravinsky/
├── mcp_bridge/ # Python MCP server
│ ├── server.py # Entry point
│ ├── auth/ # OAuth (Google & OpenAI)
│ ├── tools/ # Model invoke, search, skills
│ ├── prompts/ # Agent system prompts
│ └── config/ # Bridge configuration
├── pyproject.toml # Build system
└── README.md # This file
Troubleshooting
OpenAI "Port 1455 in use"
The Codex CLI uses the same port. Stop it with: killall codex
OpenAI Authentication Failed
- Ensure you have a ChatGPT Plus/Pro subscription
- Tokens expire occasionally; run
stravinsky-auth login openaito refresh
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stravinsky-0.2.15.tar.gz.
File metadata
- Download URL: stravinsky-0.2.15.tar.gz
- Upload date:
- Size: 901.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db9f587aabd7cddaec061a0a03e208e65597628d82c41cee6a0921a9e30b6530
|
|
| MD5 |
e7853435d3914e7482089b83aa7cba3f
|
|
| BLAKE2b-256 |
d8e39cac8cd6f84a552ba5822524214822a346834ccee2bc7cb750c9513c4991
|
File details
Details for the file stravinsky-0.2.15-py3-none-any.whl.
File metadata
- Download URL: stravinsky-0.2.15-py3-none-any.whl
- Upload date:
- Size: 85.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.21 {"installer":{"name":"uv","version":"0.9.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e67ee9c38b749835f50977a7cf166b74772766c1044a1eb806f1d1178afc7fb
|
|
| MD5 |
abe667c1144c1523e0829aeb5bc821c9
|
|
| BLAKE2b-256 |
8a4bd767fefbe449204a51b776b89240d7b9c430a1c67c72a4501b4c5987b41a
|