Releases: ejfkdev/zread
Releases · ejfkdev/zread
v2.2.1
What's Changed
Fix: MCP Tool Return Type Schemas
All MCP tools now use TypedDict return types, generating precise JSON schemas instead of generic additionalProperties: true or wrapped {"result": ...} formats.
Schema improvements:
get_repo_info→ schema with exact fields: url, name, description, language, topics, stars, status, repo_id, wiki_iddiscover_repo→ schema with topics and repos fieldssearch_repos→ returns{"repos": [...]}instead of bare array (avoids fastmcp wrap-result)get_trending→ returns{"groups": [...]}instead of bare arraysearch_wiki→ returns{"results": [...]}instead of bare arrayget_doc_outline→ schema with wiki_id, repo_id, pages fields
Before: {"result": "url: ...\ndescription: ...", "is_error": false}
After: {"url": "...", "description": "...", "language": "...", ...}
Error responses use {"error": "message"} format within the same schema.
Bug Fixes
- Fix
search_reposMCP recursive call error (renamed internal function to_search_repos_api)
v2.2.0
What's Changed
MCP Tools Return JSON
All structured MCP tools now return JSON instead of plain text, making it easier for AI assistants to parse and use the data:
- get_repo_info → returns JSON dict with url, name, description, language, topics, stars, status, repo_id, wiki_id
- discover_repo → returns JSON dict with topics and repos list
- search_repos → returns JSON list of repo items
- get_trending → returns JSON list of weekly trending groups
- get_doc_outline → returns JSON dict with wiki_id, repo_id, and pages list
- search_wiki → returns JSON list with title, slug, and matches
Text-content tools remain unchanged:
- read_doc → still returns markdown text
- read_source_file → still returns source code text
- ask_ai → still returns AI answer text
Bug Fixes
- Fix
search_reposMCP tool recursive call error
v2.1.1
v2.0.8
Full Changelog: v2.0.7...v2.0.8