Skip to content

chore(mcp): replace workspace help test tip#881

Merged
Aaron ("AJ") Steers (aaronsteers) merged 3 commits intomainfrom
origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars
Dec 2, 2025
Merged

chore(mcp): replace workspace help test tip#881
Aaron ("AJ") Steers (aaronsteers) merged 3 commits intomainfrom
origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars

Conversation

@aaronsteers
Copy link
Member

@aaronsteers Aaron ("AJ") Steers (aaronsteers) commented Dec 1, 2025

Summary by CodeRabbit

  • Documentation
    • Enhanced help text for cloud operations with improved authentication tips and workspace ID descriptions.
    • Updated tool descriptions for cloud-related endpoints to provide clearer, more concise guidance.

✏️ Tip: You can customize this high-level summary in your review settings.

@aaronsteers Aaron ("AJ") Steers (aaronsteers) changed the title tooltips: replace workspace help test tip chore(mcp): replace workspace help test tip Dec 1, 2025
@github-actions
Copy link

github-actions bot commented Dec 1, 2025

👋 Greetings, Airbyte Team Member!

Here are some helpful tips and reminders for your convenience.

Testing This PyAirbyte Version

You can test this version of PyAirbyte using the following:

# Run PyAirbyte CLI from this branch:
uvx --from 'git+https://github.com/airbytehq/PyAirbyte.git@origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars' pyairbyte --help

# Install PyAirbyte from this branch for development:
pip install 'git+https://github.com/airbytehq/PyAirbyte.git@origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars'

Helpful Resources

PR Slash Commands

Airbyte Maintainers can execute the following slash commands on your PR:

  • /fix-pr - Fixes most formatting and linting issues
  • /poetry-lock - Updates poetry.lock file
  • /test-pr - Runs tests with the updated PyAirbyte

Community Support

Questions? Join the #pyairbyte channel in our Slack workspace.

📝 Edit this welcome message.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refactors the cloud operations module by consolidating authentication and workspace ID documentation into reusable constants, replacing redundant docstring help text with a standardized extra_help_text parameter.

Key changes:

  • Introduced CLOUD_AUTH_TIP_TEXT and WORKSPACE_ID_TIP_TEXT constants to eliminate documentation duplication
  • Updated all cloud operation functions to use extra_help_text parameter instead of embedding authentication details in docstrings
  • Standardized workspace ID parameter descriptions across all functions

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 1, 2025

📝 Walkthrough

Walkthrough

Introduces two new public constants for standardized help text (CLOUD_AUTH_TIP_TEXT and WORKSPACE_ID_TIP_TEXT). Replaces verbose static descriptions across multiple MCP cloud tool endpoints with these constants and adds help text integration via decorators. No functional or control flow changes.

Changes

Cohort / File(s) Summary
Help text constants and MCP tool descriptions
airbyte/mcp/cloud_ops.py
Added two new public string constants for authentication and workspace ID help text; updated docstrings across multiple MCP tool endpoints to use these constants; added extra_help_text=CLOUD_AUTH_TIP_TEXT parameter to numerous cloud-related tool registrations for consistent help presentation.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Single-file change with consistent, repetitive pattern (help text replacement across decorators)
  • No logic modifications or functional changes to review
  • Straightforward documentation and decorator updates

Possibly related PRs

Suggested reviewers

  • aldogonzalez8

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title refers to replacing workspace help text, which aligns with the main change of replacing static workspace ID descriptions with WORKSPACE_ID_TIP_TEXT constant.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
airbyte/mcp/cloud_ops.py (1)

943-972: Should these custom definition functions also include the auth help text?

I notice that list_custom_source_definitions, update_custom_source_definition, and permanently_delete_custom_source_definition all have their workspace_id descriptions updated to use WORKSPACE_ID_TIP_TEXT, but unlike most other cloud operations in this file, they don't have extra_help_text=CLOUD_AUTH_TIP_TEXT added to their decorators.

Since these functions also call _get_cloud_workspace() and require cloud authentication, it seems like they should have the same auth help text for consistency. Was this intentional, or should we add extra_help_text=CLOUD_AUTH_TIP_TEXT to their decorators as well? Wdyt?

Here's what the additions would look like if we want consistency:

For list_custom_source_definitions (line 938):

 @mcp_tool(
     domain="cloud",
     read_only=True,
     idempotent=True,
     open_world=True,
+    extra_help_text=CLOUD_AUTH_TIP_TEXT,
 )

For update_custom_source_definition (line 975):

 @mcp_tool(
     domain="cloud",
     destructive=True,
     open_world=True,
+    extra_help_text=CLOUD_AUTH_TIP_TEXT,
 )

For permanently_delete_custom_source_definition (line 1034):

 @mcp_tool(
     domain="cloud",
     destructive=True,
     open_world=True,
+    extra_help_text=CLOUD_AUTH_TIP_TEXT,
 )
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ef69ae0 and 9716a6c.

📒 Files selected for processing (1)
  • airbyte/mcp/cloud_ops.py (54 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-10-08T15:34:31.026Z
Learnt from: aaronsteers
Repo: airbytehq/PyAirbyte PR: 411
File: airbyte/cli.py:111-160
Timestamp: 2024-10-08T15:34:31.026Z
Learning: In PyAirbyte, error messages in functions like `_resolve_source_job` in `airbyte/cli.py` are designed to decouple the message text from dynamic values, following a structlog-inspired design. Dynamic values are provided via parameters like `input_value`. This approach helps avoid including PII in the message strings, which may be used in telemetry.

Applied to files:

  • airbyte/mcp/cloud_ops.py
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
  • GitHub Check: Pytest (All, Python 3.11, Windows)
  • GitHub Check: Pytest (All, Python 3.11, Ubuntu)
  • GitHub Check: Pytest (All, Python 3.10, Ubuntu)
  • GitHub Check: Pytest (All, Python 3.10, Windows)
  • GitHub Check: Pytest (No Creds)
  • GitHub Check: Pytest (Fast)
🔇 Additional comments (2)
airbyte/mcp/cloud_ops.py (2)

30-36: Nice refactoring to centralize help text!

The constant definitions are clear and will improve maintainability by eliminating duplication across the numerous cloud operations. The naming follows Python conventions and the content is helpful for users.


142-1575: Clean refactoring across the board!

The systematic replacement of verbose help text with the new constants is well-executed. Moving authentication guidance from individual docstrings to the decorator's extra_help_text parameter is a cleaner separation of concerns and makes the docstrings more focused on what each function does. The consistency across most functions looks great.

@github-actions
Copy link

github-actions bot commented Dec 1, 2025

PyTest Results (Fast Tests Only, No Creds)

320 tests  ±0   320 ✅ ±0   5m 43s ⏱️ -13s
  1 suites ±0     0 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 9716a6c. ± Comparison against base commit ef69ae0.

@github-actions
Copy link

github-actions bot commented Dec 1, 2025

PyTest Results (Full)

388 tests  ±0   372 ✅ ±0   26m 33s ⏱️ + 1m 48s
  1 suites ±0    16 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 9716a6c. ± Comparison against base commit ef69ae0.

@aaronsteers Aaron ("AJ") Steers (aaronsteers) merged commit aac9cae into main Dec 2, 2025
24 of 25 checks passed
@aaronsteers Aaron ("AJ") Steers (aaronsteers) deleted the origin/a/fix(mcp)--resolve-incorrect-cloud-auth-help-text-env-vars branch December 2, 2025 07:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants