Why 608 Tools?
The number isn't a vanity metric. It's a consequence of building a platform that covers every aspect of business operations:
- 429 database tables each need CRUD operations exposed to AI agents
- 52 industries each have domain-specific tools (healthcare has SOAP notes, e-commerce has cart management)
- 14 AI agents each have specialized tools for their domain
- 130 Google Workspace tools alone (Gmail, Calendar, Drive, Sheets, Docs, Tasks, Forms, Chat, Meet)
- Business logic tools that go beyond CRUD: price optimization, lead scoring, campaign forecasting, inventory redistribution
When you build full business infrastructure — CRM, payments, POS, inventory, booking, marketing, content, analytics — and give AI agents the ability to operate all of it, you end up with hundreds of tools. Not by choice, but by necessity.
Two-Tier Architecture: Internal + External
Not all 608 tools are public. The system has two tiers with different security models:
| Aspect | Internal MCP | External MCP |
|---|---|---|
| Tools | ~600 | ~19 public endpoints |
| Users | 14 internal AI agents | External AIs (ChatGPT, Claude, Perplexity) |
| Auth | JWT + API key + scopes | No auth (read-only) or optional API key |
| Data | Full database access | Sanitized public data only |
| Write access | Yes (create, update, delete) | No (read-only) |
| Tenant isolation | company_id from JWT | company_id from domain detection |
Internal MCP is how Sarah books an appointment, Marcus runs a marketing analysis, and ADA orchestrates multi-agent workflows. External MCP is how ChatGPT answers “what are Best Dental's hours?” by querying the business's public MCP endpoint.
The 14 Server Categories
Tools are organized into logical servers by business domain:
CRM & Contacts
60+Contact management, deals, pipelines, tasks, communication templates
Commerce Operations
80+Pricing, tax, inventory, orders, payments, rewards, commissions
Marketing & Content
70+Email campaigns, drip sequences, A/B testing, ROI analysis, targeting
Google Workspace
130Gmail, Calendar, Drive, Sheets, Docs, Tasks, Forms, Chat, Meet
Knowledge Base & AI
30+KB search, generation, vector search, context export, 3-layer retrieval
E-Commerce
40+Products, storefronts, shopping cart, reviews, payment QR codes
AI Orchestration
30+ADA coordination, mission dispatch, knowledge graph traversal
Development Tools
25+Route introspection, test running, migrations, CI/CD
Platform Monitoring
25+Performance metrics, resource usage, security events, self-healing
Super Admin
20+Tenant management, error monitoring, platform operations
Healthcare
15+Medical case management, SOAP notes, patient records
Content Creation
30+Agent-specific tools for Marcus (marketing), Maya (brand), Ace (web)
Landing Pages
15+Page management, analytics, template system
Integration & Data
20+Webhooks, data mapping, CSV analysis, OAuth
Every Customer Gets Their Own MCP
This is the feature that makes Solid#'s MCP implementation unique: every business on the platform automatically gets auto-generated, domain-aware MCP endpoints.
When a plumber signs up and gets acme-plumbing.solidnumber.com, the following endpoints are immediately live:
The manifest content is generated dynamically from the company's actual data — their services, hours, FAQ, blog posts, landing pages. When an AI assistant is asked about that business, it can discover and query these endpoints automatically.
3-Layer Domain Detection
How does the system know which company a request is for?
- X-Company-ID header — explicit override (internal use)
- Custom domains table — verified domains like
bestdental.com - Subdomain mappings —
*.solidnumber.comsubdomains
An external AI visiting bestdental.com/.well-known/mcp.json automatically gets Best Dental's manifest. No configuration needed. No API key. The domain is the identity.
Security: 33 Scopes, Audit Trail, Rate Limits
608 tools with full database access is a security challenge. The MCP server implements:
- 33 granular scopes. Each API key has specific permissions:
kb:read,crm:contacts:write,ops:payments:charge. A key withkb:readcan search the knowledge base but can't modify contacts or process payments. - Mandatory tenant isolation. Every tool receives
company_idinjected by middleware — not from the request. Tools don't trust caller-provided company IDs. - Complete audit trail. Every MCP operation is logged to
MCPAuditLogwith the tool name, company, user, request, response, and timing. - Per-key rate limiting. Different rate limits per key, per IP, per endpoint. Public discovery endpoints: 120 req/min. Authenticated operations: configurable per key.
Multi-Agent Orchestration
The 608 tools aren't used by a single AI. They're shared across 14 agents, each with different access patterns:
- Sarah (customer service) uses CRM contact tools, booking tools, and KB search to handle inbound inquiries
- Marcus (growth) uses marketing analytics, campaign tools, and competitor analysis to drive growth
- ADA (orchestrator) uses mission dispatch and coordination tools to route work across agents
- Devon (operations) uses monitoring, self-healing, and deployment tools
When a customer asks Sarah about pricing and Sarah doesn't have the answer, she can use KB search tools to find it. If a complex question needs analytics, ADA can dispatch it to Marcus with the relevant context. The tools are the shared language between agents.
Not Just CRUD: Intelligent Tools
Most MCP servers expose database CRUD operations. Ours do too — but the most valuable tools are the ones that embed business logic:
price.suggest_optimal_price— analyzes competitor pricing, demand patterns, and margin targets to recommend pricingcrm.deals.forecast— predicts deal closure probability based on pipeline stage, activity history, and industry benchmarksmarketing.analytics.suggest_improvements— analyzes campaign performance and recommends specific changeskb.vector_search— semantic search across the knowledge base using embeddings, not just keyword matchingecommerce.abandoned_cart.recover— triggers intelligent follow-up sequences for abandoned carts
These tools let AI agents make decisions, not just read data. The difference between “here are your sales numbers” and “your conversion rate dropped 15% — here's why and here's what to do about it.”
What We Learned
- Organization is everything at scale. 608 tools in a flat list is unusable. 14 logical server categories with clear naming conventions (
crm.contacts.search,ops.inventory.check) make tools discoverable by AI agents without a manual. - Per-tenant MCP is a competitive moat. Most AI platforms have one MCP endpoint for the whole platform. Giving every customer their own auto-generated MCP means external AIs can discover and recommend individual businesses — not just the platform.
- Domain detection replaces API keys for discovery. Public MCP endpoints don't need authentication because the domain itself identifies the tenant. This makes discovery frictionless for external AI systems.
- Scopes prevent tool sprawl from becoming a security risk. 608 tools with full access is dangerous. 608 tools where each key can only access its authorized subset is manageable. Scopes make large tool counts safe.
- Business logic tools are 10x more valuable than CRUD. An AI agent that can read inventory is useful. An AI agent that can predict when you'll run out of a product and auto-generate a purchase order is transformative.
AI-to-AI Is the Future of Business Software
MCP isn't just a protocol for tool calling. It's how AI systems will discover and interact with businesses. When a customer asks ChatGPT “find me a plumber near me,” the plumber whose website has an MCP endpoint with real-time availability and pricing has an advantage over the one with a static HTML page.
Every Solid# business is AI-discoverable from day one. 608 tools. Per-tenant endpoints. Domain-aware routing. This isn't a roadmap item — it's live in production.