perimeter-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PERIMETER_URL | No | URL of the perimeter core service, e.g. http://localhost:8000. Only needed when using the core-backed tools: perimeter_deidentify, perimeter_reidentify, and perimeter_log_event. | |
| PERIMETER_API_KEY | No | A secret from PERIMETER_API_KEYS in core's settings. Only needed when using the core-backed tools: perimeter_deidentify, perimeter_reidentify, and perimeter_log_event. |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| perimeter_scan_codeA | Checks web code for common mistakes with patient or health data: data saved in browser storage, analytics trackers, scripts or fonts loaded from other sites, personal data written to logs, unencrypted or unapproved network requests, secret keys in the code, forms with no privacy notice, and eval-style code. Runs on this machine; nothing is uploaded. Useful after writing or changing code that handles health information. Returns each finding with its file, line, a plain explanation and a suggested fix. It looks for a fixed list of mistakes: a clean result is not a compliance review. |
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 1 tool
With only one tool in the set, there is no possibility of tool-to-tool confusion. The single tool has a clearly stated, narrow purpose (scanning code for health-data privacy mistakes), so selection is unambiguous.
The lone name, perimeter_scan_code, follows a clean snake_case verb_noun-ish convention and is internally consistent with the server's 'perimeter' branding. No mixed conventions exist to conflict with it.
One tool is thin for a server surface, though the tool itself is substantive rather than trivial and the domain (a fixed-rule static scanner) is narrow enough that a single entry point is defensible. It sits on the borderline between well-scoped and under-provisioned.
The core operation—scan and report findings—is covered, but a scanning domain typically also wants rule enumeration, rule suppression/configuration, and directory- or repo-level scanning rather than a single invocation. These are notable gaps an agent cannot work around with the current surface.