Orchestra MCP AI — Multi-provider AI chat with skills system, conversation management, and markdown rendering
Installs: 1
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/orchestra-mcp/ai
Requires
- php: ^8.2
- laravel/mcp: ^0.1|^0.5
- orchestra-mcp/desktop: v0.0.1
- orchestra-mcp/panels: v0.0.1
- orchestra-mcp/plugins: v0.0.1
- orchestra-mcp/tray: v0.0.1
Requires (Dev)
- carthage-software/mago: ^1.0
- laravel/pint: ^1.24
- orchestra/testbench: ^10.0
- pestphp/pest: ^3.0|^4.0
- pestphp/pest-plugin-laravel: ^3.0|^4.0
This package is auto-updated.
Last update: 2026-02-11 15:12:35 UTC
README
AI
Orchestra MCP AI plugin — Multi-provider AI chat with skills system, conversation management, and REST API.
Features
- Multi-Provider — Built-in support for Anthropic Claude and OpenAI GPT with extensible provider system
- Skills System — Register custom skills that can be invoked during conversations
- Conversation Management — Create, continue, and manage multi-turn conversations
- 4 MCP Tools — Chat, list providers, list skills, get config
- 3 Artisan Commands — List providers, list skills, send messages
- REST API — Full HTTP API for chat, providers, skills, and conversations
- Configurable — Default provider, model, token limits, temperature via config/env
Requirements
- PHP 8.2+
- Laravel 12.x
orchestra-mcp/pluginspackage
Installation
composer require orchestra-mcp/ai
The service provider is auto-discovered.
Quick Start
Send a Message
use OrchestraMcp\Ai\Facades\Ai; $response = Ai::chat('Explain quantum computing in simple terms'); echo $response->content;
Choose a Provider
// Use Claude $response = Ai::chat('Hello', providerId: 'claude', model: 'claude-opus-4-6'); // Use OpenAI $response = Ai::chat('Hello', providerId: 'openai', model: 'gpt-4o');
Manage Conversations
$conversation = Ai::createConversation('claude', 'claude-sonnet-4-5-20250929', 'You are a helpful assistant.'); $response = Ai::chat('What is Laravel?', conversationId: $conversation->id); $followUp = Ai::chat('Tell me more about Eloquent', conversationId: $conversation->id);
Register a Custom Skill
use OrchestraMcp\Ai\Contracts\SkillInterface; use OrchestraMcp\Ai\Facades\Ai; Ai::registerSkill(new MyTranslationSkill()); $result = Ai::executeSkill('translate', 'Hello world', ['target' => 'es']);
Artisan Commands
php artisan ai:providers # List registered providers php artisan ai:skills # List registered skills php artisan ai:chat "What is PHP?" # Send a message
Built-in Providers
| Provider | ID | Models |
|---|---|---|
| Anthropic Claude | claude |
claude-opus-4-6, claude-sonnet-4-5-20250929, claude-haiku-4-5-20251001 |
| OpenAI | openai |
gpt-4o, gpt-4o-mini, gpt-4-turbo, o1, o1-mini |
MCP Tools
| Tool | Annotation | Description |
|---|---|---|
ai-chat |
— | Send a message to an AI provider |
ai-providers |
#[IsReadOnly] |
List available providers |
ai-skills |
#[IsReadOnly] |
List registered skills |
ai-config |
#[IsReadOnly] |
Get AI configuration |
Configuration
Publish the config:
php artisan vendor:publish --tag=orchestra-ai-config
| Key | Default | Env Variable | Description |
|---|---|---|---|
enabled |
true |
ORCHESTRA_AI_ENABLED |
Enable/disable AI plugin |
default_provider |
'claude' |
ORCHESTRA_AI_DEFAULT_PROVIDER |
Default provider |
max_tokens |
4096 |
ORCHESTRA_AI_MAX_TOKENS |
Max response tokens |
temperature |
0.7 |
ORCHESTRA_AI_TEMPERATURE |
Sampling temperature |
providers.claude.api_key |
— | ANTHROPIC_API_KEY |
Claude API key |
providers.openai.api_key |
— | OPENAI_API_KEY |
OpenAI API key |
REST API
| Method | Path | Description |
|---|---|---|
POST |
/api/ai/chat |
Send a chat message |
GET |
/api/ai/providers |
List providers |
GET |
/api/ai/skills |
List skills |
GET |
/api/ai/config |
Get configuration |
GET |
/api/ai/conversations |
List conversations |
DELETE |
/api/ai/conversations/{id} |
Delete a conversation |
Documentation
Full documentation is available in the docs/ directory:
- Getting Started — Installation, configuration, quick start
- Architecture — Provider system, skills, conversations
- Providers — Built-in and custom providers
- Skills — Skills system and custom skills
- Tools — MCP tool reference
- Commands — Artisan command reference
- Configuration — Full config key reference
- API Reference — Facades, services, contracts
Development
# Install dependencies composer install # Run tests composer test # Format code composer format # Static analysis composer check # Lint composer lint
License
MIT

