feat: per-tool package restructure + 4 new MCP tools + routing support#50
Merged
bobby-smedley merged 12 commits intomainfrom Apr 13, 2026
Merged
feat: per-tool package restructure + 4 new MCP tools + routing support#50bobby-smedley merged 12 commits intomainfrom
bobby-smedley merged 12 commits intomainfrom
Conversation
Move each of the 12 MCP tools from a flat pkg/tools/ package into self-contained sub-packages (pkg/tools/<tool_name>/). This enables the factory pipeline to generate isolated tool packages without needing access to the full Chip codebase. Changes: - Each tool now lives in its own package with Input/Output types and a NewTool constructor (namespace replaces prefixes) - Shared test helpers extracted to pkg/tools/testutil/ - Registration file updated to import all sub-packages - All tests pass, build clean, vet clean
- Rename sub-packages to match main's tool names: ask_dad -> discover_data_assets ask_glossary -> discover_business_glossary find_data_classification_matches -> search_data_classification_matches keyword_search -> search_asset_keyword - Port get_asset_details responsibilities feature to sub-package style - Convert 10 new tools from main to sub-packages: get_business_term_data, get_column_semantics, get_lineage_downstream, get_lineage_entity, get_lineage_transformation, get_lineage_upstream, get_measure_data, get_table_semantics, search_lineage_entities, search_lineage_transformations - Add new clients: lineage, dgc_relation, dgc_responsibility - Update register.go with all 22 tools
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
MieszkoWasniowski
previously approved these changes
Apr 9, 2026
#51) * fix: correct DefinitionAttributeTypeID * fix: rename relation/attribute type constants to match DGC and fix broken UUIDs * fix: update hardcoded DefinitionAttributeTypeID in add_business_term test
MieszkoWasniowski
approved these changes
Apr 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🎯 What does this PR do?
Merges the
bot/mainbranch intomain, bringing a major restructuring of the tools architecture and 4 new factory-generated MCP tools.Per-tool package restructure
pkg/tools/package into self-contained sub-packages (pkg/tools/<tool_name>/), each with its ownInput/Outputtypes andNewToolconstructorpkg/tools/testutil/New MCP tools (factory-generated)
prepare_add_business_term— resolves domain/community/type UUIDs before adding a business term (feat: add prepare_add_business_term MCP tool #41)create_asset— creates a new asset in Collibra via the REST API (feat: add create_asset MCP tool #43)add_business_term— adds a business term to the glossary (feat: add add_business_term MCP tool #44)prepare_create_asset— resolves UUIDs needed before creating an asset, with camelCase JSON tags (feat: add prepare_create_asset MCP tool #45, fix: align prepare_create_asset and create_asset contract #46)Other changes
CopilotToolNamesexport — exposes tool names for chip-service routing (feat: expose CopilotToolNames for chip-service routing #48)add_business_term_client.go,create_asset_client.go,prepare_add_business_term_client.go,prepare_create_asset_client.go56 files changed across
pkg/tools/,pkg/clients/, and registration.✅ Checklist