SuperAPI AI Directory

janee

Self-evolving server that uses an LLM to create, test and refine its own tools at runtime from natural language descriptions.

Open website

About this tool

Janee is a secrets management tool for AI agents that works through the MCP (Model Context Protocol) protocol. Its core goal is to solve the problem of AI agents needing API access without holding raw API keys.

Purpose

Janee sits between AI agents and real APIs, responsible for injecting credentials, enforcing security policies, and logging all access. Agents never come into contact with real keys, and users retain full control. It mainly addresses the following pain points: agents having full access to Stripe, Gmail, databases, etc.; no access audit records; no kill switch when something goes wrong; a single prompt injection can lead to disaster.

Main capabilities

  • Encrypted secret storage: API keys are encrypted using AES-256-GCM and stored in the local ~/.janee/ directory.
  • Configure once, use in multiple places: once an API is configured in Janee, all MCP agents connected to Janee (Claude Desktop, Cursor, OpenClaw, etc.) can use it, with no need to copy keys between multiple tools. Revoking or updating a key only needs to be done once in Janee.
  • Complete audit logs: every request records the timestamp, service, method, path, and status to ~/.janee/logs/.
  • Access control: supports setting an allowedAgents allowlist by capability, as well as a service-level defaultAccess policy (restricted/open). Agent identity is derived from clientInfo.name during the MCP initialization handshake. Credentials created by an agent at runtime are by default accessible only to the creator.
  • Request policies (rules): use rules to control the requests each capability can make, supporting the METHOD PATH format, such as GET , POST /v1/charges/, * /v1/customers, DELETE /v1/customers/*. deny is checked first, and if no rule matches, the default is to deny. Policies are enforced on the server side.
  • Exec mode: some CLI tools require credentials to be provided as environment variables rather than HTTP headers. Exec mode can inject credentials into environment variables before running a command, returning stdout/stderr, with credentials notentering the agent context.
  • Automatic authentication for Git operations: when using GitHub credentials in Exec mode, Janee automatically detects git commands and creates a temporary askpass script to complete HTTPS authentication, and automatically cleans up after the command ends.
  • GitHub App authentication: provides on-demand, short-lived installation tokens (1 hour) for long-running agents, avoiding the use of long-lived PATs.
  • AWS signing: computes AWS Signature V4 (HMAC-SHA256) per request, with access keys stored encrypted and non-key fields (region, awsService) stored in plaintext.
  • OAuth 1.0a: computes HMAC-SHA1 signatures on the server side, keeping the 4 Twitter keys encrypted and out of the agent context.
  • Runner/Authority architecture: for containerized agents, Authority runs on the host, holds credentials, and proxies API requests, while Runner runs inside each container, and the agent only needs to set JANEE_URL=http://localhost:3200。
  • Container support: Janee can be run as a container without a local Node.js environment, with Docker Compose support.
  • Sessions and kill switch: Sessions are time-limited and revocable, and can be terminated via janee revoke or by deleting the configuration.

Usage

  1. Store API keys (stored encrypted in ~/.janee/).
  2. Run janee serve to start the MCP server.
  3. Agents request access through the execute MCP tool.
  4. Janee injects the real key.
  5. All processes are logged, and the response is returned to the agent.

Configuration is in ~/.janee/config.yaml, containing Services (real APIs and real keys) and Capabilities (what agents can request and the policies). Initialization generates a configuration file with example services. It offers interactive setup (recommended for first use) and non-interactive setup (using --*-from-env flags to read credentials from environment variables, suitable for AI agents, avoiding secrets entering the context window).

Janee exposes three MCP tools: execute, manage_credential, janee_exec. Agents first discover available services, then call APIs through Janee.

OpenClaw integration: Install the plugin @true-and-useful/janee-openclaw; once enabled, it provides the janee_list_services and janee_execute tools, and the plugin automatically starts janee serve.

Use cases

  • AI agents that need API access permissions (Claude Desktop, Cursor, OpenClaw, Claude Code, Codex CLI, and any other MCP client).
  • Teams that need to audit AI agent access behavior.
  • Scenarios that need to run agents in containers and manage credentials centrally.
  • Scenarios that need to use CLI tools or Git operations without exposing keys.

Limitations

  • Keys are stored encrypted locally, and agent identity is based on clientInfo.name in the MCP initialization handshake.
  • Exec mode has security-hardened defaults: an isolated minimal environment (does not inherit the full host environment), a temporary HOME per command, and killing the process group on timeout.
  • The default timeout is 30 seconds, adjustable via --timeout.
  • Exec mode supports an --allow-commands whitelist to restrict executable files.
  • In rule mode, if rules are defined but none match, the default is to deny.

License and maintenance

Janee is licensed under MIT and built by True and Useful LLC. Contributions are welcome; before submitting a PR, please read CONTRIBUTING.md (which includes the required PR checklist).