Laravel-based MCP server providing OAuth-connected social media and financial account tools
Server exposes 9 tools across Facebook, GitHub, and Monzo connectors. All tools have descriptions (10-80 chars, mostly adequate) and input schemas with type definitions. However, critical gaps undermine quality: (1) Tool names lack consistent verb-noun structure, 'facebook-get-post-stats' and 'get-facebook-me-tool' mix conventions; (2) Parameter descriptions are minimal or absent, 'limit' in facebook-get-posts has a description, but many params lack context on format/constraints; (3) Output schemas are not documented anywhere in the source, LLMs cannot infer what fields to expect from responses; (4) No error handling guidance visible, tools return raw API responses without recovery hints; (5) Three tools (get-facebook-me-tool, monzo-list-accounts-tool, monzo-list-transactions-tool) are defined only in test files, not in production tool classes, suggesting incomplete registration. Per-tool scores average 48 due to missing output documentation and inconsistent naming.
Fetch the ID for the authenticated Facebook user's business.
Fetch the authenticated Facebook user's photos.
Fetch engagement stats (likes, comments, shares) for a single Facebook post.
Fetch the most recent posts published on the connected Facebook page.
Get the authenticated Facebook user's basic information.
List GitHub repositories for the authenticated user.
Output schemas not documented. No tool response structure is visible in source code. LLMs cannot infer what fields to expect, forcing them to guess or make wasteful follow-up calls.
Inconsistent tool naming. 'get-facebook-me-tool' and 'monzo-list-accounts-tool' use '-tool' suffix; others do not. 'get-facebook-me-tool' is vague, does not clearly indicate it fetches user profile. Naming should follow verb_noun convention consistently.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | <=2025-11-25 | v2 |
List Monzo Accounts Information
List Monzo Account Transactions
Read Monzo Account Balance
Three tools defined only in test files (get-facebook-me-tool, monzo-list-accounts-tool, monzo-list-transactions-tool), not in production tool classes. Suggests incomplete registration or test-only definitions. Cannot verify actual tool implementation.
Parameter descriptions are minimal. 'limit' in facebook-get-posts has a description, but many parameters lack guidance on format, constraints, or valid ranges. E.g., 'account_id' in monzo tools lacks context on format or how to obtain it.
No error handling guidance visible. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. Raw API errors will confuse agents.