Remove mcp-gateway/README_OPENAI.md
This commit is contained in:
parent
95d8eaed0d
commit
edcd2efd05
1 changed files with 0 additions and 227 deletions
|
|
@ -1,227 +0,0 @@
|
||||||
# MCP Gateway OpenAI-Compatible Integration
|
|
||||||
|
|
||||||
> **Status**: ✅ Complete and ready to deploy
|
|
||||||
|
|
||||||
Your MCP Gateway now supports **both Claude.ai (MCP) and Open-UI (OpenAI API)** using the same backend services.
|
|
||||||
|
|
||||||
## 🎯 What Changed
|
|
||||||
|
|
||||||
You now have:
|
|
||||||
- ✅ OpenAI-compatible `/v1/*` endpoints
|
|
||||||
- ✅ Bearer token authentication
|
|
||||||
- ✅ Tool discovery and listing
|
|
||||||
- ✅ Streaming response support
|
|
||||||
- ✅ Both Claude and Open-UI working simultaneously
|
|
||||||
|
|
||||||
## 🚀 Quick Start
|
|
||||||
|
|
||||||
### 1. Restart the Gateway
|
|
||||||
```bash
|
|
||||||
cd /path/to/mcp-gateway
|
|
||||||
docker compose restart mcp-gateway
|
|
||||||
```
|
|
||||||
|
|
||||||
### 2. Verify It's Working
|
|
||||||
```bash
|
|
||||||
curl -H "Authorization: Bearer rIoRseJSR9rqwl5bp4CEOyOUKdymaoJnAsT-y752BDi2qD9jJYbgd8sWkiQIGMtz" \
|
|
||||||
https://mcp.wilddragon.net/v1/models
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. Configure Open-UI
|
|
||||||
- Admin → Settings → Connections
|
|
||||||
- Enable "Direct Connections"
|
|
||||||
- Add: `https://mcp.wilddragon.net/v1`
|
|
||||||
- Key: `rIoRseJSR9rqwl5bp4CEOyOUKdymaoJnAsT-y752BDi2qD9jJYbgd8sWkiQIGMtz`
|
|
||||||
|
|
||||||
## 📁 Files Created/Modified
|
|
||||||
|
|
||||||
### New Files
|
|
||||||
| File | Purpose |
|
|
||||||
|------|---------|
|
|
||||||
| `gateway-proxy/openai_routes.py` | OpenAI API handlers |
|
|
||||||
| `openai_adapter.py` | Optional adapter class |
|
|
||||||
| `SETUP_OPEN_UI.md` | Step-by-step setup guide |
|
|
||||||
| `DEPLOYMENT_CHECKLIST.md` | Pre/post-deployment checklist |
|
|
||||||
| `OPENAI_INTEGRATION.md` | Technical integration details |
|
|
||||||
| `ARCHITECTURE.md` | System architecture overview |
|
|
||||||
| `README_OPENAI.md` | This file |
|
|
||||||
|
|
||||||
### Modified Files
|
|
||||||
| File | Changes |
|
|
||||||
|------|---------|
|
|
||||||
| `gateway-proxy/gateway_proxy.py` | Added OpenAI route imports and `/v1/*` endpoints |
|
|
||||||
|
|
||||||
## 📚 Documentation
|
|
||||||
|
|
||||||
**Start here:**
|
|
||||||
1. [`SETUP_OPEN_UI.md`](./SETUP_OPEN_UI.md) - How to set up and use
|
|
||||||
2. [`DEPLOYMENT_CHECKLIST.md`](./DEPLOYMENT_CHECKLIST.md) - Before/after checklist
|
|
||||||
3. [`ARCHITECTURE.md`](./ARCHITECTURE.md) - How it works
|
|
||||||
|
|
||||||
**Reference:**
|
|
||||||
- [`OPENAI_INTEGRATION.md`](./OPENAI_INTEGRATION.md) - Technical details
|
|
||||||
- [`openai_routes.py`](./gateway-proxy/openai_routes.py) - Implementation
|
|
||||||
|
|
||||||
## 🔑 Your Bearer Token
|
|
||||||
|
|
||||||
```
|
|
||||||
rIoRseJSR9rqwl5bp4CEOyOUKdymaoJnAsT-y752BDi2qD9jJYbgd8sWkiQIGMtz
|
|
||||||
```
|
|
||||||
|
|
||||||
**Keep this safe!** This token allows access to all your MCP tools.
|
|
||||||
|
|
||||||
## 🎯 Available Endpoints
|
|
||||||
|
|
||||||
### For Claude.ai (Existing)
|
|
||||||
```
|
|
||||||
POST /mcp # MCP protocol
|
|
||||||
/oauth/authorize, /oauth/token # OAuth 2.1 flow
|
|
||||||
/.well-known/* # Discovery
|
|
||||||
```
|
|
||||||
|
|
||||||
### For Open-UI (New)
|
|
||||||
```
|
|
||||||
GET /v1/models # List models
|
|
||||||
POST /v1/chat/completions # Chat completion
|
|
||||||
```
|
|
||||||
|
|
||||||
### Monitoring
|
|
||||||
```
|
|
||||||
GET /health # Health check
|
|
||||||
GET /status # Full status
|
|
||||||
```
|
|
||||||
|
|
||||||
## 🔄 How It Works
|
|
||||||
|
|
||||||
```
|
|
||||||
Open-UI Request:
|
|
||||||
POST /v1/chat/completions
|
|
||||||
Authorization: Bearer TOKEN
|
|
||||||
|
|
||||||
↓
|
|
||||||
|
|
||||||
Gateway validates token:
|
|
||||||
✓ Check Bearer header
|
|
||||||
✓ Hash token
|
|
||||||
✓ Validate against ACCESS_TOKENS
|
|
||||||
|
|
||||||
↓
|
|
||||||
|
|
||||||
Fetch available tools:
|
|
||||||
Call MCP: tools/list
|
|
||||||
Convert to OpenAI format
|
|
||||||
|
|
||||||
↓
|
|
||||||
|
|
||||||
Return OpenAI response:
|
|
||||||
{
|
|
||||||
"id": "chatcmpl-xxx",
|
|
||||||
"object": "chat.completion",
|
|
||||||
"choices": [{
|
|
||||||
"message": {
|
|
||||||
"content": "Available tools: ..."
|
|
||||||
}
|
|
||||||
}],
|
|
||||||
"usage": {...}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## ✨ Current Features
|
|
||||||
|
|
||||||
✅ Tool discovery and listing
|
|
||||||
✅ Bearer token authentication
|
|
||||||
✅ Streaming support
|
|
||||||
✅ OpenAI API format compliance
|
|
||||||
✅ Works alongside existing MCP setup
|
|
||||||
|
|
||||||
## 🚧 Future Enhancements
|
|
||||||
|
|
||||||
**Phase 2 (Optional):**
|
|
||||||
- [ ] Actual tool execution
|
|
||||||
- [ ] System prompts
|
|
||||||
- [ ] Tool parameter validation
|
|
||||||
|
|
||||||
**Phase 3 (Optional):**
|
|
||||||
- [ ] Caching
|
|
||||||
- [ ] Rate limiting
|
|
||||||
- [ ] Audit logging
|
|
||||||
|
|
||||||
## 🔐 Security
|
|
||||||
|
|
||||||
- **Bearer tokens**: 64-char secure random tokens
|
|
||||||
- **HTTPS only**: Use in production
|
|
||||||
- **No token storage**: Hashed in memory only
|
|
||||||
- **Per-request validation**: Every API call verified
|
|
||||||
|
|
||||||
## 🆘 Troubleshooting
|
|
||||||
|
|
||||||
**Gateway won't start:**
|
|
||||||
```bash
|
|
||||||
docker compose logs mcp-gateway
|
|
||||||
# Check for Python import errors
|
|
||||||
```
|
|
||||||
|
|
||||||
**Can't connect from Open-UI:**
|
|
||||||
```bash
|
|
||||||
# Test the endpoint
|
|
||||||
curl -H "Authorization: Bearer YOUR_TOKEN" \
|
|
||||||
https://mcp.wilddragon.net/v1/models
|
|
||||||
```
|
|
||||||
|
|
||||||
**Unauthorized errors:**
|
|
||||||
- Check token is correct
|
|
||||||
- Verify Authorization header format
|
|
||||||
- Ensure token is in ACCESS_TOKENS
|
|
||||||
|
|
||||||
## 📊 Architecture
|
|
||||||
|
|
||||||
Your system now runs:
|
|
||||||
|
|
||||||
```
|
|
||||||
Claude.ai ──┐ ┌──── Open-UI
|
|
||||||
│ OAuth │ Bearer Token
|
|
||||||
▼ ▼
|
|
||||||
MCP Gateway (/mcp, /v1/*)
|
|
||||||
│
|
|
||||||
┌───────┼───────┬──────────┐
|
|
||||||
▼ ▼ ▼ ▼
|
|
||||||
ERPNext Wave TrueNAS Home Assistant
|
|
||||||
```
|
|
||||||
|
|
||||||
Both clients use the same backend services!
|
|
||||||
|
|
||||||
## 📞 Support
|
|
||||||
|
|
||||||
### If Something's Broken
|
|
||||||
|
|
||||||
1. **Check logs**: `docker compose logs mcp-gateway`
|
|
||||||
2. **Test endpoint**: `curl https://mcp.wilddragon.net/v1/models`
|
|
||||||
3. **Verify token**: Is it correct? Is it in ACCESS_TOKENS?
|
|
||||||
4. **Restart**: `docker compose restart mcp-gateway`
|
|
||||||
|
|
||||||
### For Advanced Setup
|
|
||||||
|
|
||||||
See [`OPENAI_INTEGRATION.md`](./OPENAI_INTEGRATION.md) for:
|
|
||||||
- Custom configuration
|
|
||||||
- Token management
|
|
||||||
- System prompts
|
|
||||||
- Tool execution setup
|
|
||||||
|
|
||||||
## 🎉 You're All Set!
|
|
||||||
|
|
||||||
Your MCP Gateway is now:
|
|
||||||
- ✅ Running with Claude.ai support (MCP protocol)
|
|
||||||
- ✅ Running with Open-UI support (OpenAI API)
|
|
||||||
- ✅ Connected to all your backend services
|
|
||||||
- ✅ Ready for production use
|
|
||||||
|
|
||||||
**Next steps:**
|
|
||||||
1. Restart the gateway
|
|
||||||
2. Configure Open-UI
|
|
||||||
3. Start using your tools!
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Questions?** Check the documentation files above or review the implementation in `gateway-proxy/openai_routes.py`.
|
|
||||||
|
|
||||||
Happy automating! 🚀
|
|
||||||
Loading…
Reference in a new issue