Skip to content

feat(mcp): Add list_cloud_organizations tool with name_contains filter#908

Closed
devin-ai-integration[bot] wants to merge 1 commit intomainfrom
devin/1765423690-list-cloud-organizations
Closed

feat(mcp): Add list_cloud_organizations tool with name_contains filter#908
devin-ai-integration[bot] wants to merge 1 commit intomainfrom
devin/1765423690-list-cloud-organizations

Conversation

@devin-ai-integration
Copy link
Contributor

Summary

Adds a new MCP tool list_cloud_organizations that lists all organizations accessible to the current user, with optional case-insensitive substring filtering by name.

This is useful for system admins with access to multiple organizations who need to find an org when they only know part of its name (e.g., searching "marathon" to find "Marathon Org").

Review & Testing Checklist for Human

  • Test the tool with real credentials - Call list_cloud_organizations and verify it returns your accessible organizations
  • Test the name_contains filter - Verify case-insensitive matching works (e.g., name_contains="marathon" matches "Marathon Org")
  • Verify empty results are handled gracefully - Test with a filter that matches no organizations

Recommended Test Plan

  1. Use the MCP CLI to call list_cloud_organizations with no parameters - should return all accessible orgs
  2. Call with name_contains set to a partial org name (lowercase) - should match case-insensitively
  3. Call with a filter that matches nothing - should return empty list

Notes

  • No unit tests added - relies on existing patterns and manual testing
  • Filtering is client-side since the Airbyte API doesn't support server-side org name filtering

Link to Devin run: https://app.devin.ai/sessions/d8212a7bceaf4995a63369460134dc03
Requested by: aldo.gonzalez@airbyte.io

- Add new list_cloud_organizations MCP tool
- Supports optional name_contains parameter for case-insensitive substring filtering
- Useful for finding organizations when only part of the name is known

Co-Authored-By: aldo.gonzalez@airbyte.io <aldo.gonzalez@airbyte.io>
@devin-ai-integration
Copy link
Contributor Author

Original prompt from aldo.gonzalez@airbyte.io
Received message in Slack channel #ask-devin-ai:

@Devin can you check all the workspaces in org c48aad53-0882-4012-874c-34cc4f439f93, I want to find all the connections that have Youtube Analytics from as sources, bring me those connections links please.
Thread URL: https://airbytehq-team.slack.com/archives/C08BHPUMEPJ/p1765414896273579

@devin-ai-integration
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@github-actions
Copy link

👋 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@devin/1765423690-list-cloud-organizations' pyairbyte --help

# Install PyAirbyte from this branch for development:
pip install 'git+https://github.com/airbytehq/PyAirbyte.git@devin/1765423690-list-cloud-organizations'

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.

@github-actions
Copy link

PyTest Results (Fast Tests Only, No Creds)

348 tests  ±0   348 ✅ ±0   5m 56s ⏱️ -10s
  1 suites ±0     0 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 6723bec. ± Comparison against base commit 441105e.

@github-actions
Copy link

PyTest Results (Full)

416 tests  ±0   399 ✅ ±0   23m 51s ⏱️ -37s
  1 suites ±0    17 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 6723bec. ± Comparison against base commit 441105e.

@aaronsteers
Copy link
Member

aside -

Aldo Gonzalez (@aldogonzalez8) - FYI, If you want to find an organization name or ID and you already have a workspace within it, you can use the updated "check workspace" MCP tool. I recently extended that tool so I could more easily discover our own org ID and name. Even looking up the org ID and name did require additional permissions, so I suggest with this tool you may similarly need to think about how to fail gracefully if caller doesn't have sufficient permissions.

@aaronsteers
Copy link
Member

Closing. Resolved in airbyte-ops-mcp.

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.

1 participant