Open-source MCP tool server that connects, manages, and executes tools from multiple providers (GitHub, Notion, Slack, Linear, Gmail, Google Calendar, Stripe, Vercel, Resend, PostgreSQL). Supports OAuth2 and API key authentication with audit logging and token management.
Server exposes 8 tools with mixed quality. Tool names follow verb_noun convention (search_tools, get_tool_details, execute_dynamic_tool), which is good. However, descriptions are present but generic (avg ~80 chars, below 194-char baseline). Critical gap: input schemas are NOT visible in the provided source code, only parameter names and types are listed in the summary, not actual JSON Schema definitions. Cannot verify schema completeness, constraints (enums, patterns, min/max), or output schemas. Tool descriptions lack WHEN-to-use guidance and dependency hints. No evidence of error handling patterns or recovery guidance in tool definitions. Composition is reasonable (separate search, get, execute tools), but parameter descriptions are minimal.
Execute multiple tools in parallel with concurrency control via gRPC server-streaming call.
Execute a single tool via gRPC unary call. Returns result or error with execution duration.
Execute a tool with streaming progress updates via gRPC server-streaming call.
Get the input schema for a specific tool via gRPC.
List all tools available for the authenticated user via gRPC. Supports filtering by provider and connection status.
Execute a tool dynamically by ID with provided arguments. Handles authentication, audit logging, and result truncation.
Get full schema and metadata for a specific tool by its ID
Input schemas not visible in source code. Only parameter names/types listed in summary; actual JSON Schema definitions, constraints (enums, patterns, min/max), and output schemas cannot be verified. Cannot confirm schema completeness.
Tool descriptions are generic and lack WHEN-to-use guidance. E.g., 'Get full schema and metadata for a specific tool by its ID' does not explain when to call this vs search_tools or ListTools. No dependency hints or prerequisites documented.
Inconsistent naming convention: MCP tools use snake_case (search_tools, get_tool_details) but gRPC tools use PascalCase (ListTools, ExecuteTool). LLMs may conflate or misselect tools due to naming inconsistency.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | <=2025-11-25 | v2 |
Search and filter tools by keyword, provider, category, or capability. Returns a paginated list of matching tools. If no options are provided, returns a provider summary.
Parameter descriptions are minimal (1-2 sentences). No format constraints, ranges, or validation rules documented. E.g., 'limit' parameter lacks min/max bounds; 'offset' lacks guidance on pagination behavior.
No error handling patterns visible. Tool descriptions do not indicate what errors are possible, whether they are retryable, or what recovery steps the LLM should take. No actionable error guidance.