januscope — Claude Code MCP server: what it does, how to install
Local policy proxy for MCP tools. It enforces read-only rules, redacts sensitive customer data, and records tool executions.
claude mcp add --env JANUSCOPE_USER=<JANUSCOPE_USER> --env JANUSCOPE_TEAM=<JANUSCOPE_TEAM> --env JANUSCOPE_SESSION=<JANUSCOPE_SESSION> --transport stdio januscope -- npx -y januscopeWhat januscope does
The proxy intercepts traffic between an MCP client and downstream servers using a single YAML configuration file known as a Lens. It cuts off destructive capabilities like table drops or arbitrary file edits before they execute. At the same time, the tool scrubs personal details from returned payloads and injects database schemas upfront.
Execution stays strictly on the local machine with no remote gateway handling your traffic. Node.js 20 or newer is required to run the proxy. You also must supply JANUSCOPE_USER, JANUSCOPE_TEAM, and JANUSCOPE_SESSION in your environment, or initialization fails immediately.
The package bundles 20 preconfigured policies for databases, GitHub, and SaaS APIs. Audit events write directly to a local JSONL file for verification. Because rules apply at the proxy layer, upstream endpoints still accept whatever traffic clears your filters.
What it helps with
- stop destructive actions such as deleting database tables
- strip email addresses and sensitive attributes from model context
- log every tool interaction into a local JSONL audit trail
- inject database schemas beforehand to reduce token overhead
Example prompts for the agent
- Query the orders database and verify that personal email fields remain masked
- Attempt an update query against the database to confirm read-only policy enforcement
How to install januscope
Platform CLI
claude mcp add --env JANUSCOPE_USER=<JANUSCOPE_USER> --env JANUSCOPE_TEAM=<JANUSCOPE_TEAM> --env JANUSCOPE_SESSION=<JANUSCOPE_SESSION> --transport stdio januscope -- npx -y januscopeReplace <…> with your own values
Platform CLI
codex mcp add januscope --env JANUSCOPE_USER=<JANUSCOPE_USER> --env JANUSCOPE_TEAM=<JANUSCOPE_TEAM> --env JANUSCOPE_SESSION=<JANUSCOPE_SESSION> -- npx -y januscopeReplace <…> with your own values
Config file
{
"mcpServers": {
"januscope": {
"command": "npx",
"args": [
"-y",
"januscope"
],
"env": {
"JANUSCOPE_USER": "<JANUSCOPE_USER>",
"JANUSCOPE_TEAM": "<JANUSCOPE_TEAM>",
"JANUSCOPE_SESSION": "<JANUSCOPE_SESSION>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"januscope": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"januscope"
],
"env": {
"JANUSCOPE_USER": "<JANUSCOPE_USER>",
"JANUSCOPE_TEAM": "<JANUSCOPE_TEAM>",
"JANUSCOPE_SESSION": "<JANUSCOPE_SESSION>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e JANUSCOPE_USER=<JANUSCOPE_USER> -e JANUSCOPE_TEAM=<JANUSCOPE_TEAM> -e JANUSCOPE_SESSION=<JANUSCOPE_SESSION> januscope npx -y januscopeReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about januscope
How to install januscope in Claude Code?
Run `claude mcp add --env JANUSCOPE_USER=<JANUSCOPE_USER> --env JANUSCOPE_TEAM=<JANUSCOPE_TEAM> --env JANUSCOPE_SESSION=<JANUSCOPE_SESSION> --transport stdio januscope -- npx -y januscope`. Replace placeholders inside angle brackets with your values.
What does januscope do?
It acts as an on-device proxy around MCP servers, applying security guardrails, redacting private information, and recording actions.
Does januscope route traffic through an external cloud service?
No, proxying and policy evaluation occur entirely on your local machine. However, your upstream server and LLM provider still receive any requests that pass validation.