Centralized MCP proxy with governance, OAuth support, edge execution, and policy-based access control
Fentaris exposes 5 tools with minimal descriptions and incomplete schemas. Most tools lack parameter descriptions entirely. auth_status and status have empty input objects with no properties documented. release_notes description is vague ('visible to maintainers only'). echo lacks a description for its 'message' parameter. No tool documents output schemas or error recovery paths. Tool names follow verb_noun convention (auth_login, auth_status) but descriptions are too brief (10-30 chars) to guide LLM selection. No tool declares permissions, idempotency, or destructiveness. This is typical of a proxy server that exposes minimal agent-facing tools, but the definitions lack the rigor needed for reliable agentic use.
Start an OAuth login for one MCP server and return the URL the human must open.
Report which OAuth-protected MCP servers are authorized for the current caller.
Echo a message back with the authenticated subject
Release notes are visible to maintainers only.
Report workspace status and authenticated subject
Tool descriptions are too brief (10-30 chars) to guide LLM selection. 'Report which OAuth-protected MCP servers are authorized' (auth_status) and 'Report workspace status and authenticated subject' (status) lack context on WHEN to call them vs similar tools.
Parameter descriptions are missing or incomplete. auth_login accepts 'server' (string) but provides no guidance on valid server names, format, or how to discover available servers. echo's 'message' parameter has no description at all.
Output schemas are not documented. No tool specifies what fields are returned, their types, or structure. LLMs cannot plan downstream calls or extract required data without knowing the response shape.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2025-06-18+ | v2 |
No error handling guidance. Tools do not document failure modes, recovery steps, or actionable error messages. An LLM calling auth_login with an invalid server name has no guidance on what to do next.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). All tools are marked READ_ONLY in metadata but this is not exposed in tool definitions, so LLMs cannot reason about safety or retry semantics.