Yagami AI Context Firewall

io.github.MatthewTracyPublished by GitHub account MatthewTracyv0.8.6Updated Nov 3, 2026

Open-source AI context firewall for governed model, retrieval, memory, and tool access.

Overview

Yagami AI Context Firewall's local MCP server; no sign-in required; STDIO.

No AI overview yet: these facts come from the registry entry and the server itself.

Installation

In SourceWeft

  1. Open Yagami AI Context Firewall in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Yagami

An AI router that chooses models and protects privacy.

Yagami automatically routes requests to local or cloud models based on the task and your privacy policy. Detected sensitive information, including PHI, stays local under the default policy. Local models can reduce cloud API costs; more demanding work and image generation can use cloud providers when allowed.

[CI] [PyPI] [Python] [License: MIT]

Documentation | Gateway API | Deployment | Security | Roadmap

Watch Yagami in action

[Preview of Yagami generating an image with the cloud route highlighted]

Watch the 59-second demo: local answers, a fictional patient case kept on the machine, and cloud image generation. The recording uses real models, synthetic patient information, and configured providers with yagami serve. The no-credential demo below keeps cloud routing disabled.

Try it in 60 seconds

The no-credential demo uses your configured Ollama model when it is installed; otherwise it opens a clearly labeled policy-only fallback. Choose one command:

bash
uvx yagami demo# or: python -m pip install yagami && yagami demo# or: docker run --rm -p 127.0.0.1:8000:8000 ghcr.io/matthewtracy/yagami:latest yagami demo --host 0.0.0.0 --allow-remote

Open http://127.0.0.1:8000, or use docker compose -f compose.demo.yaml up from a clone. Demo mode blocks cloud routing while exercising the UI, policy, lineage, storage, and audit path. For local AI answers, install Ollama and run ollama pull llama3.2:3b-instruct-q4_K_M before starting the demo.

[Yagami workspace with conversation history, chat, and session insights]

Yagami is for developers and platform/security teams that need to control where agent context goes and which tools it may execute. For example: a coding agent can keep repository secrets on-device and require an identity-bound, one-time approval before a dangerous tool call.

Yagami sits between software and local models, cloud LLMs, retrieval systems, memory, and tools. Existing OpenAI SDK applications can adopt it by changing one base_url; Yagami then classifies context locally, applies versioned policy, and records content-free evidence for each decision.

Take the no-data security tour or run the flagship security demos for secret containment, poisoned retrieval, and identity-bound tool approval.

Protect an application

Initialize persistent user configuration, check the host, and start Yagami:

bash
yagami inityagami doctoryagami serve

Install yagami[providers] when the Yagami process or the example client uses Anthropic/OpenAI-compatible SDKs. PDF ingestion and OS key storage are separate ingest and desktop extras; see configuration.

Then point an OpenAI client at the gateway:

python
from openai import OpenAI
client = OpenAI(    base_url="http://127.0.0.1:8000/v1",    api_key="your-yagami-project-key",)
response = client.chat.completions.create(    model="yagami-auto",    messages=[{"role": "user", "content": "Summarize this document."}],    metadata={        "purpose": "internal-documentation",        "sensitivity": "none",        "session_id": "example-session",    },)print(response.choices[0].message.content)

Supported caller sensitivity values are none, phi, phi_medical, and secret. A caller hint can make the policy stricter; it cannot lower a sensitivity detected by Yagami.

For production authentication, policy, and deployment settings, follow the deployment guide.

Why teams use Yagami

  • Deterministic containment after classification. Once context is labeled as PHI or secret, default policy permits local backends only. Sensitive history and tool results inherit the same restriction.
  • One governed data plane. Chat Completions, Responses, the browser chat, and MCP use the same policy, lineage, transformation, output-DLP, budget, and audit pipeline.
  • Policy as code. Preview and replay decisions, run regression cases in CI, and promote deterministic Ed25519-signed policy bundles.
  • Evidence without prompt logging. Policy passports, hash-chained audit records, Prometheus metrics, and OpenTelemetry spans carry labels, hashes, IDs, and counts rather than prompt or completion content.
  • Model choice without policy duplication. Route to local engines, direct cloud providers, or an existing OpenAI-compatible gateway behind one enforcement point.
  • Governed tools. Evaluate function tools and MCP calls before execution, require short-lived one-time approvals, and keep inbound credentials from being forwarded to downstream servers.

Core capabilities

AreaIncluded
Compatible APIsOpenAI Chat Completions, core Responses API, Streamable HTTP MCP
IdentityScoped project API keys and OIDC/JWT workload identity
PolicyVersioned YAML/JSON rules, restrictive merging, preview, replay, shadow mode, regression tests, signed bundles
PrivacyLocal classification, caller sensitivity, context lineage, AES-GCM tokenization, rehydration, output DLP, optional Presidio
ToolsFunction calling, governed built-in skills, stdio and remote MCP, one-time approvals
OperationsSpend/rate/concurrency/context limits, health checks, Prometheus, OpenTelemetry, SIEM export, approval webhooks
PackagingPython 3.11-3.14, PyPI, non-root container, Docker Compose, Helm, SBOMs, checksums, and build provenance

Models and integrations

Local generation works with Ollama, llama.cpp through the optional llama-cpp-python runtime, and Microsoft Foundry Local through its loopback OpenAI-compatible service. Direct cloud adapters cover Anthropic, OpenAI, Mistral, Groq, OpenRouter, Google Gemini, and Stability AI image generation.

Yagami also works with LangChain/LangGraph, the Vercel AI SDK, Microsoft Presidio, Splunk HEC and generic SIEM webhooks, Slack and Teams approval notifications, and upstream gateways such as LiteLLM, Portkey, Kong, or Envoy. See the integration recipes.

How it compares

Yagami is not trying to replace every gateway, validator, or security scanner. Its focus is deterministic post-classification containment, governed tool execution, and content-free decision evidence. See the honest comparison guide for when LiteLLM, Guardrails AI, NeMo Guardrails, Presidio, LlamaFirewall, or a direct provider SDK is the better choice—and how to combine them with Yagami.

How enforcement works

mermaid
flowchart LR    A["Application or agent"] --> B["Authentication and project limits"]    B --> C["Local classification and context lineage"]    C --> D["Versioned policy"]    D --> E{"Allowed destination or capability"}    E --> F["Local or approved model"]    E --> G["Retrieval, memory, or tool"]    F --> H["Output inspection"]    G --> H    H --> I["Response"]    D --> J["Content-free policy passport and audit chain"]    H --> J

Policy is the final authority. Slash commands and explicit backend selection cannot override a sensitive-data restriction. Classifier failures fail local by default, and cloud routes can be blocked entirely or stopped at a daily spend cap.

Important limitations

Yagami is an enforcement component, not a compliance certification. Automated detection can miss sensitive data. Strict deployments should declare sensitivity at the caller, use a local-only policy, test organization-specific cases, encrypt storage at the host or volume layer, and review the threat model.

The project is alpha. Validate policy and failure behavior against your own requirements before production use.

Documentation

Contributing

Focused issues and pull requests are welcome. Read CONTRIBUTING.md, the security policy, and the code of conduct.

License

MIT - Copyright (c) 2026 Matthew Tracy and Yagami contributors.

Source: README.md at commit c56fc99

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

4
  1. v0.8.6LatestNov 3, 2026
  2. v0.8.4Oct 30, 2026
  3. v0.8.3Oct 6, 2026
  4. v0.7.3Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts