
- Added list_directory_content tool for browsing repository files/directories - Added get_file_content tool with smart truncation for large files - Smart defaults by file type (config: 200, docs: 300, code: 500 lines) - Pagination support with start_line and line_count parameters - Tail functionality using negative start_line values - Auto-truncation for files >50KB, explicit approval needed for >1MB files - Returns metadata including size, encoding, and last modified info - Added FileHandlers class following modular architecture - Added TypeScript interfaces and type guards - Updated version to 0.5.0 and CHANGELOG
5 KiB
5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.5.0] - 2025-01-21
Added
- New file and directory handling tools:
list_directory_content
- List files and directories in any repository path- Shows file/directory type, size, and full paths
- Supports browsing specific branches
- Works with both Bitbucket Server and Cloud APIs
get_file_content
- Retrieve file content with smart truncation for large files- Automatic smart defaults by file type (config: 200 lines, docs: 300 lines, code: 500 lines)
- Pagination support with
start_line
andline_count
parameters - Tail functionality using negative
start_line
values (e.g., -50 for last 50 lines) - Automatic truncation for files >50KB to prevent token overload
- Files >1MB require explicit
full_content: true
parameter - Returns metadata including file size, encoding, and last modified info
- Added
FileHandlers
class following existing modular architecture patterns - Added TypeScript interfaces for file/directory entries and metadata
- Added type guards
isListDirectoryContentArgs
andisGetFileContentArgs
Changed
- Enhanced documentation with comprehensive examples for file handling tools
[0.4.0] - 2025-01-21
Added
- New
get_branch
tool for comprehensive branch information:- Returns detailed branch information including name, ID, and latest commit details
- Lists all open pull requests originating from the branch with approval status
- Optionally includes merged pull requests when
include_merged_prs
is true - Provides useful statistics like PR counts and days since last commit
- Supports both Bitbucket Server and Cloud APIs
- Particularly useful for checking if a branch has open PRs before deletion
- Added TypeScript interfaces for
BitbucketServerBranch
andBitbucketCloudBranch
- Added type guard
isGetBranchArgs
for input validation
Changed
- Updated documentation to include the new
get_branch
tool with comprehensive examples
[0.3.0] - 2025-01-06
Added
- Enhanced merge commit details in
get_pull_request
:- Added
merge_commit_hash
field for both Cloud and Server - Added
merged_by
field showing who performed the merge - Added
merged_at
timestamp for when the merge occurred - Added
merge_commit_message
with the merge commit message - For Bitbucket Server: Fetches merge details from activities API when PR is merged
- For Bitbucket Cloud: Extracts merge information from existing response fields
- Added
Changed
- Major code refactoring for better maintainability:
- Split monolithic
index.ts
into modular architecture - Created separate handler classes for different tool categories:
PullRequestHandlers
for PR lifecycle operationsBranchHandlers
for branch managementReviewHandlers
for code review tools
- Extracted types into dedicated files (
types/bitbucket.ts
,types/guards.ts
) - Created utility modules (
utils/api-client.ts
,utils/formatters.ts
) - Centralized tool definitions in
tools/definitions.ts
- Split monolithic
- Improved error handling and API client abstraction
- Better separation of concerns between Cloud and Server implementations
Fixed
- Improved handling of merge commit information retrieval failures
- Fixed API parameter passing for GET requests across all handlers (was passing config as third parameter instead of fourth)
- Updated Bitbucket Server branch listing to use
/rest/api/latest/
endpoint with proper parameters - Branch filtering now works correctly with the
filterText
parameter for Bitbucket Server
[0.2.0] - 2025-06-04
Added
- Complete implementation of all Bitbucket MCP tools
- Support for both Bitbucket Cloud and Server
- Core PR lifecycle tools:
create_pull_request
- Create new pull requestsupdate_pull_request
- Update PR detailsmerge_pull_request
- Merge pull requestslist_branches
- List repository branchesdelete_branch
- Delete branches
- Enhanced
add_comment
with inline comment support - Code review tools:
get_pull_request_diff
- Get PR diff/changesapprove_pull_request
- Approve PRsunapprove_pull_request
- Remove approvalrequest_changes
- Request changes on PRsremove_requested_changes
- Remove change requests
- npm package configuration for easy installation via npx
Fixed
- Author filter for Bitbucket Server (uses
role.1=AUTHOR
andusername.1=email
) - Branch deletion handling for 204 No Content responses
Changed
- Package name to
@nexus2520/bitbucket-mcp-server
for npm publishing
[0.1.0] - 2025-06-03
Added
- Initial implementation with basic tools:
get_pull_request
- Get PR detailslist_pull_requests
- List PRs with filters
- Support for Bitbucket Cloud with app passwords
- Support for Bitbucket Server with HTTP access tokens
- Authentication setup script
- Comprehensive documentation