Skip to main content
Glama

Solid Multi-Tenant DevOps MCP Server

COMPREHENSIVE_DOCS.md12.6 kB
# Comprehensive Solid MCP Server ## 🎉 COMPLETE! 608 Tools Exposed **Auto-generated from your entire Solid backend API** ### What Was Built A **fully automated MCP server generator** that: 1. ✅ Scans your backend API (`/api/v1/_debug/routes`) 2. ✅ Auto-generates 608 MCP tools from 623 API routes 3. ✅ Categorizes them into 36 logical groups 4. ✅ Creates complete input schemas with smart defaults 5. ✅ Implements dynamic request handling for all methods (GET, POST, PUT, DELETE, PATCH) --- ## 📊 System Coverage ### Total Tools: 608 **Breakdown by Category:** | Category | Tools | Description | |----------|-------|-------------| | **CRM System** | 103 | Full CRM with contacts, deals, tasks, templates, webhooks, integrations | | **Other** | 142 | AI Chat Integration, Catalog, Email, Inventory, Reports, etc. | | **MCP Tools** | 48 | Backup, Docker, Self-Healing, DevOps tools | | **Console** | 26 | Admin console and management | | **Social Media** | 26 | Social account management and posting | | **AI Agents** | 24 | Agent management, approvals, conversations | | **SuperAdmin** | 23 | Platform management, tenants, analytics | | **Security** | 19 | 2FA, access control, compliance | | **Payment Processors** | 18 | Processor integration and management | | **ADA Orchestrator** | 15 | ADA decision engine and communications | | **Performance Monitoring** | 14 | Performance alerts and analysis | | **Content Management** | 11 | Blog posts and CMS | | **Onboarding** | 11 | User onboarding flows | | **Product Variants** | 10 | Variant attributes and management | | **Point of Sale** | 10 | POS card processing and events | | **Order Management** | 9 | Order creation and processing | | **Dashboard** | 8 | Dashboard metrics and charts | | **Merchant Configuration** | 8 | Merchant config and categories | | **Sandbox Environment** | 8 | Sandbox testing | | **LLM Providers** | 7 | LLM provider management | | **System Monitoring** | 7 | Alerts and error logging | | **Webhooks** | 7 | Webhook integrations | | **Analytics** | 6 | Churn prediction, cohort analysis | | **Payment Links** | 6 | Payment link creation | | **Product Management** | 6 | Product catalog | | **Stock Management** | 6 | Stock adjustments and levels | | **Domain Management** | 5 | Custom domain management | | **Token Usage & Billing** | 5 | Token analytics and budgets | | **Warehouse Locations** | 5 | Location management | | **Billing & Subscriptions** | 4 | Subscription management | | **Inventory Management** | 4 | Expiration tracking | | **Payments** | 3 | Charge, refund, webhooks | | **Authentication** | 1 | User registration | | **Shopping Cart** | 1 | Cart items | | **AI Chat** | 1 | Chat integration | | **Order Fulfillment** | 1 | Dispatch orders | --- ## 🚀 Quick Start ### 1. Generate Tools (Already Done!) ```bash npm run generate # ✅ Fetched 623 routes # ✅ Generated 608 MCP tools # ✅ Created generated-tools.json ``` ### 2. Build Comprehensive Server (Already Done!) ```bash npm run build # ✅ Built comprehensive MCP server # ✅ Created src/comprehensive-index.js # ✅ Updated package.json scripts ``` ### 3. Test It ```bash # List all 608 tools echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | node src/comprehensive-index.js # Call a specific tool echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"agents","arguments":{"company_id":1}}}' | node src/comprehensive-index.js ``` ### 4. Use in Claude Desktop Update your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`): ```json { "mcpServers": { "solid-comprehensive": { "command": "node", "args": ["/Users/adamcampbell/Desktop/Solid/solid-mcp-server/src/comprehensive-index.js"], "env": {} } } } ``` Then restart Claude Desktop and enjoy **608 tools**! --- ## 🛠️ Available Scripts ```bash # Regenerate tools from backend (if routes change) npm run generate # Rebuild MCP server npm run build # Do both in one command npm run rebuild # Start comprehensive server npm run start:comprehensive # Start simple server (18 tools) npm start ``` --- ## 📁 File Structure ``` solid-mcp-server/ ├── src/ │ ├── index.js # Simple 18-tool server │ └── comprehensive-index.js # Full 608-tool server (auto-generated) ├── scripts/ │ ├── generate-tools.js # Tool generator │ └── build-mcp-server.js # Server builder ├── generated-tools.json # All 608 tools with metadata ├── tools-summary.json # Summary statistics ├── .env # Backend URL configuration └── package.json # Scripts and dependencies ``` --- ## 🔧 How It Works ### 1. Tool Generation (`generate-tools.js`) **Input**: Backend API routes from `/api/v1/_debug/routes` **Process**: - Fetches all routes (623 total) - Extracts path parameters (`{company_id}`, `{agent_id}`, etc.) - Categorizes by API prefix (`/api/v1/crm`, `/api/v1/agents`, etc.) - Generates smart input schemas: - Path params → required fields - GET requests → add `limit`, `offset`, `query` params - POST/PUT/PATCH → add `body` field - Multi-tenant → add `company_id` filter - Creates descriptive tool names and descriptions **Output**: `generated-tools.json` with 608 tools ### 2. Server Building (`build-mcp-server.js`) **Input**: `generated-tools.json` **Process**: - Generates complete MCP server code - Implements `tools/list` handler - Implements `tools/call` handler with: - Path parameter substitution - Query string building for GET - Request body handling for POST/PUT/PATCH - Error handling - Updates `package.json` scripts **Output**: `src/comprehensive-index.js` (ready to use) ### 3. Dynamic Request Handling When you call a tool: 1. **Find tool** in registry by name 2. **Build URL** by replacing path params (`{id}` → actual value) 3. **Add query params** for GET requests 4. **Add body** for POST/PUT/PATCH requests 5. **Make request** to backend 6. **Return response** with metadata (tool, category, endpoint, method, status, data) --- ## 🎯 Example Tool Calls ### List All AI Agents ```bash echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"agents","arguments":{"company_id":1,"limit":10}}}' | node src/comprehensive-index.js ``` ### Get Specific Agent ```bash echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"agents.by_agent_id","arguments":{"agent_id":1}}}' | node src/comprehensive-index.js ``` ### Create CRM Contact ```bash echo '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"post_crm.contacts","arguments":{"body":{"first_name":"John","last_name":"Doe","email":"john@example.com"}}}}' | node src/comprehensive-index.js ``` ### Get Platform Analytics ```bash echo '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"superadmin.analytics","arguments":{}}}' | node src/comprehensive-index.js ``` ### Search CRM Deals ```bash echo '{"jsonrpc":"2.0","id":5,"method":"tools/call","params":{"name":"crm.deals","arguments":{"company_id":1,"stage":"Proposal"}}}' | node src/comprehensive-index.js ``` --- ## 🔄 Keeping It Updated When you add new API routes to your backend: ```bash # Regenerate everything npm run rebuild # Or step by step: npm run generate # Fetch new routes npm run build # Rebuild server ``` The generator automatically: - Detects new routes - Creates new tool definitions - Rebuilds the MCP server - Updates tool counts --- ## 📈 Statistics - **Total API Routes**: 623 - **Total MCP Tools**: 608 - **Categories**: 36 - **Methods Supported**: - GET: 295 tools - POST: 250 tools - PUT: 32 tools - DELETE: 23 tools - PATCH: 8 tools --- ## 🎨 Tool Naming Convention Tools are named automatically from their API paths: ``` GET /api/v1/agents → agents GET /api/v1/agents/{agent_id} → agents.by_agent_id POST /api/v1/crm/contacts → post_crm.contacts PUT /api/v1/products/{id} → put_products.by_id GET /api/v1/crm/deals/forecast → crm.deals.forecast ``` --- ## 🏗️ Architecture ``` ┌─────────────────────────────────────────────┐ │ Claude Desktop (You) │ │ "Show me all CRM contacts for company 1" │ └─────────────────┬───────────────────────────┘ │ ↓ stdio (JSON-RPC) ┌─────────────────────────────────────────────┐ │ Comprehensive MCP Server (Node.js) │ │ 608 tools dynamically mapped │ └─────────────────┬───────────────────────────┘ │ ↓ HTTP REST ┌─────────────────────────────────────────────┐ │ Solid Backend API (FastAPI) │ │ http://localhost:8090 │ │ 623 routes across 36 categories │ └─────────────────┬───────────────────────────┘ │ ↓ ┌─────────────────────────────────────────────┐ │ PostgreSQL + Redis │ │ All tenant data, agents, CRM, etc. │ └─────────────────────────────────────────────┘ ``` --- ## 💡 Pro Tips ### 1. Explore Tools by Category Use natural language in Claude Desktop: ``` Show me all available CRM tools What tools do I have for managing AI agents? List all tools in the "SuperAdmin" category ``` ### 2. Multi-Tenant Operations All tools support `company_id` filtering: ``` Get agents for company 1 Search CRM contacts for company 5 List products for company 10 ``` ### 3. Bulk Operations Combine multiple tool calls: ``` Get company 1 details, then list their agents, then get their CRM contacts ``` ### 4. Regenerate After Backend Changes Modified your backend API? Just run: ```bash npm run rebuild ``` --- ## 🎉 Success Criteria You know it's working when: 1. ✅ `npm run generate` shows 608+ tools 2. ✅ `npm run build` completes successfully 3. ✅ Test command returns tool list 4. ✅ Claude Desktop shows "solid-comprehensive" in MCP servers 5. ✅ You can ask Claude natural language questions about your system 6. ✅ Tools return real data from your backend --- ## 🐛 Troubleshooting ### Tools Not Updating? ```bash # Force regenerate rm generated-tools.json tools-summary.json npm run rebuild ``` ### Backend Not Responding? ```bash # Check backend is running curl http://localhost:8090/ curl http://localhost:8090/api/v1/_debug/routes # Restart if needed cd /Users/adamcampbell/Desktop/Solid ./start-all.sh ``` ### Claude Desktop Not Seeing Server? 1. Check config path: `~/Library/Application Support/Claude/claude_desktop_config.json` 2. Verify absolute path to `comprehensive-index.js` 3. Restart Claude Desktop completely --- ## 📝 Next Steps ### Immediate - ✅ Install in Claude Desktop - ✅ Test with natural language queries - ✅ Monitor what tools get used most ### Future Enhancements - Add authentication/API keys for production - Implement caching for frequently-accessed tools - Add rate limiting per tool - Create tool usage analytics - Add custom tool descriptions/examples --- **Built with automation by Claude Code** **Last Generated**: 2025-10-12 **Version**: 2.0.0 (Comprehensive) --- ## 🔗 Related Files - Original simple server: `src/index.js` (18 tools for DevOps) - Tool data: `generated-tools.json` (all 608 tools with full metadata) - Summary: `tools-summary.json` (statistics and categories) - Backend routes: `http://localhost:8090/api/v1/_debug/routes` - Your MCP documentation: `/Users/adamcampbell/Desktop/Solid/solid-backend/MCP_LIST.md` --- **You now have COMPLETE access to your entire Solid platform through Claude Desktop!** 🚀

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Adam-Camp-King/solid-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server