
CodeMerge
STDIOMCP server using Osmosis-Apply-1.7B model for intelligent code merging and editing operations
MCP server using Osmosis-Apply-1.7B model for intelligent code merging and editing operations
A Model Context Protocol (MCP) server that uses the Osmosis-Apply-1.7B model to merge code edits.
ollama pull Osmosis/Osmosis-Apply-1.7B
git clone <repository-url> cd codemerge
uv sync
uv run python codemerge.py
CodeMerge can be used as an MCP server. Configure it in your MCP client:
{ "mcpServers": { "codemerge": { "command": "uv", "args": [ "--directory", "/path/to/codemerge", "run", "codemerge.py" ] } } }
You can also use CodeMerge directly in Python:
from call_snippet import apply_code_edit # Original code original_code = """def hello(): print('Hello, World!') print('Some code') print('Some more code') return 'success'""" # Edit to apply edit_snippet = """def hello(): print('Hello, Universe!') print('Some code') # ... existing code ... return 'success'""" # Apply the edit result = apply_code_edit(original_code, edit_snippet) print(result)
The MCP server provides an edit_snippet
tool with the following parameters:
original_code
: The exact original code to be editededit_snippet
: The edit to apply, using // ... existing code ...
markersfile_path
: Absolute path to a file to update in placeExample tool call:
{ "name": "edit_snippet", "arguments": { "original_code": "def hello():\n print('Hello, World!')", "edit_snippet": "def hello():\n print('Hello, Universe!')\n # ... existing code ...", "file_path": "/path/to/your/file.py" } }
CodeMerge uses a specific format for edits that preserves context while being concise:
// ... existing code ...
FIRST_EDIT
// ... existing code ...
SECOND_EDIT
// ... existing code ...
THIRD_EDIT
// ... existing code ...
The // ... existing code ...
markers indicate where the original code should be preserved. This allows you to specify only the parts you want to change while maintaining the exact structure and formatting of the original code.
httpx>=0.28.1
: HTTP client for API callsmcp[cli]>=1.10.1
: Model Context Protocol implementationollama
: Python client for Ollama (installed separately)CodeMerge consists of several components:
codemerge.py
: Main MCP server implementationcall_snippet.py
: Direct usage interface with streaming supporttest_codemerge.py
: Comprehensive test suitepyproject.toml
: Project configuration and dependencies