locksmith
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 |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| analyze_migrationA | Lint a PostgreSQL migration for operations that take dangerous locks (table rewrites, blocking index builds, validating constraints, destructive/breaking changes) and return a PASS/REVIEW/BLOCK verdict with per-statement findings and safe rewrites. Call this before applying or approving any migration. |
| explain_lockA | Given a lock mode name (e.g. 'ACCESS EXCLUSIVE') or a fragment of an operation, explain what it blocks and which operations acquire it. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| review-migration | Analyze a migration with Locksmith and summarize the risk for a PR comment. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| lock-matrix | Which lock each operation takes and what that lock blocks. |
| rules | All migration-safety rules, their severity, and rationale. |
TDQS
Scored across 2 tools
Each tool has a clearly distinct purpose: analyze_migration scans migrations for risky lock operations, while explain_lock describes lock modes and blocking behavior. There is no overlap or ambiguity between them.
Both tool names follow a consistent verb_noun pattern: analyze_migration and explain_lock. The naming is predictable and clearly reflects each tool's action and target.
With only two tools, the server feels minimal but still coherent for its narrow domain of PostgreSQL lock safety. It is borderline thin, but the two tools cover the primary use case of analyzing migrations and understanding locks, so the count is acceptable.
The tool surface covers the full workflow of checking a migration for dangerous locks and providing educational support on lock modes. Minor gaps exist, such as no tool for inspecting live database locks or comparing lock compatibility, but the core purpose is well-served.