Add MCP selector input schemas#942
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR adds structured input schema validation to two MCP bounty tools. ChangesMCP Bounty Tool Schemas
Possibly related issues
Possibly related PRs
🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
catcherintheroad-hub
left a comment
There was a problem hiding this comment.
Reviewed PR #942 at head b7ef1e9d01c6f33b4afa57bbc1312b89ecdc7d4a.
I checked the new tools/list schemas for get_bounty and list_bounty_attempts against the existing runtime selectors in app/mcp.py. The schema shapes match the implemented tool behavior: internal id / bounty_id / issue_number selection for get_bounty, bounty_id / issue_number selection for attempts, optional repo scoped to issue-number lookup, boolean toggles for awards/expired attempts, bounded attempt limit, and additionalProperties: false for the discoverability contract. The added assertions in tests/test_api_mcp.py cover the schema metadata without changing tools/call behavior.
Validation performed from an isolated worktree:
python -m pytest tests/test_api_mcp.py -q-> 110 passed, 1 existing Starlette/httpx warningpython -m pytest tests/test_api_mcp.py tests/test_mcp_tools.py tests/test_docs_public_urls.py -q-> 153 passed, 1 existing Starlette/httpx warningpython -m ruff check app/mcp.py tests/test_api_mcp.py-> passedpython -m ruff format --check app/mcp.py tests/test_api_mcp.py-> passedpython -m mypy app/mcp.py-> passedpython scripts/docs_smoke.py-> docs smoke okgit diff --check origin/main...HEAD-> passedgit merge-tree --write-tree HEAD origin/main-> clean treec372a4f329e893a1c145dbfc8a8ff94736b60057
GitHub currently reports mergeStateStatus: CLEAN; Quality/readiness/docs/image checks are green; CodeRabbit finished with no actionable comments.
Bounty #844
Summary:
tools/listinputSchemametadata forget_bounty, coveringid,bounty_id,issue_number, optionalrepo, andinclude_awards;tools/listinputSchemametadata forlist_bounty_attempts, coveringbounty_id,issue_number, optionalrepo,include_expired, and boundedlimit;tools/callruntime behavior and response payloads.Duplicate/current check:
get_wallet(Add get_wallet MCP input schema #926) andget_balance(Add get_balance MCP input schema #937); this PR covers the remaining bounty selector/attempt selector discovery surface.tools/listschemas.Validation:
python -m pytest tests\test_api_mcp.py -q-> 110 passed, 1 existing Starlette/httpx warningpython -m ruff check app\mcp.py tests\test_api_mcp.py-> passedpython -m ruff format --check app\mcp.py tests\test_api_mcp.py-> 2 files already formattedSummary by CodeRabbit
Tests
Improvements