devsync-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tasks | {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
} |
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pull_team_profileB | Clone or pull a team config profile repository into the local devsync library. Args: git_url: Git repository URL or local path containing team configs namespace: Override namespace (auto-derived from URL if not provided) Returns: Profile info with name, description, version, and list of configs |
| list_profile_configsA | List all config files in a pulled team profile. Args: namespace: Profile namespace (as returned by pull_team_profile) Returns: List of configs with name, type, target path, and description |
| detect_current_configsA | Scan the user's environment for existing configuration files. Detects shell profiles, git configs, editor configs, AI rules, and more. Args: project_root: Project root directory (defaults to cwd) Returns: List of detected config files with paths, types, and checksums |
| preview_mergeA | Return source (team) and target (user) content for the LLM to intelligently merge. The MCP server does NOT perform the merge. It returns both contents so the host IDE's LLM can understand the semantics and produce an intelligent merge that preserves personal customizations while incorporating team standards. Args: namespace: Profile namespace config_name: Name of the config to merge (from list_profile_configs) project_root: Project root for project-relative targets Returns: Dict with source_content, target_content (None if no existing file), target_path, config_type, and description |
| apply_mergeA | Write LLM-merged content to the target path, creating a backup of the original. Call this AFTER the LLM has produced the merged content from preview_merge output. Args: namespace: Profile namespace config_name: Config name that was merged merged_content: The LLM's merged output to write target_path: File path to write the merged content to Returns: Merge record with backup path, checksums, and status |
| sync_allA | Pull latest profile, detect changes, and present a merge plan. This is a convenience tool that combines pull + status check into one call. Returns a plan showing which configs need merging. Args: namespace: Profile namespace project_root: Project root for project-relative targets Returns: Merge plan with status of each config (pending/merged/changed) |
| list_backupsA | List backup files from previous merge operations. Args: profile_name: Filter backups by profile (all if not specified) Returns: List of backup files with paths, sizes, and timestamps |
| restore_backupA | Restore a config file from a previous backup. Args: backup_path: Path to the backup file (from list_backups) target_path: Where to restore the file Returns: Confirmation with restored path |
| get_merge_statusA | Show the current merge status for all configs in a profile. For each config, reports whether it is:
Args: namespace: Profile namespace project_root: Project root for project-relative targets Returns: List of config statuses |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose: pulling profiles, detecting configs, previewing merges, applying merges, listing status, backups, etc. No two tools overlap in functionality; sync_all is explicitly a convenience wrapper.
All tool names use snake_case and imperative verbs (apply, detect, get, list, preview, pull, restore, sync). The naming patterns are mostly verb_noun, though 'list_profile_configs' and 'list_backups' mix noun sequences. Overall consistent and readable.
With 9 tools, the server covers the config synchronization workflow without unnecessary bloat. Each tool serves a specific, non-redundant role in the lifecycle of pulling, merging, and restoring configs.
The tool surface covers the full lifecycle: pulling profiles, detecting local configs, previewing merges, applying merges, managing backups, and checking status. A minor gap is the lack of a tool to explicitly update a profile (e.g., re-pull), but the workflow is tightly scoped and functional.