Server has 8 tools with complete JSON Schema definitions and descriptions. Naming follows verb_noun convention (list_, get_, create_). However, parameter descriptions are sparse or missing for many fields. Output schemas are not documented. Error handling lacks recovery guidance. Tool descriptions are adequate (100-150 chars) but lack context on when to use each tool vs. alternatives. No tool annotations (readOnlyHint/destructiveHint) despite clear risk levels. Missing idempotency guidance for write operations.
Create a new issue in a repository
Create a new pull request
Get the content of a file in a repository
Get information about a specific repository
List contents of a directory in a repository
List issues in a repository
List pull requests in a repository
Output schemas not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., issue_id from create_issue response). Breaks tool chaining.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). create_issue and create_pull_request are marked WRITE but lack destructiveHint annotation. Agents cannot distinguish safe from risky operations.
Error handling lacks recovery guidance. Tool handlers catch exceptions and return generic 500 errors without actionable next steps. LLMs cannot self-correct or retry intelligently.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | <=2025-11-25 | v2 |
List GitHub repositories accessible to the authenticated user
Parameter descriptions incomplete. 'owner' and 'repo' appear in 6 tools but lack context (e.g., 'GitHub username or organization name' vs bare 'Repository owner'). 'ref' parameter in get_file_content and list_directory lacks format guidance (branch vs tag vs commit hash).
No pagination guidance. list_repositories, list_issues, list_pull_requests return potentially large result sets but lack limit/offset/cursor parameters or documentation of result caps. Large responses risk context window exhaustion.