Atlarium Habitat Database MCP

Created By
techgardeners2 hours ago
Public read-only MCP server for structured aquarium, marine, terrarium and paludarium habitat data. Exposes 39 read-only tools, 9 guided prompts and an Apps-compatible Habitat Explorer widget over a Streamable HTTP endpoint with auth none.
Overview

Atlarium Habitat Database MCP social preview

Atlarium Habitat Database MCP

Public read-only MCP server for Atlarium habitat data, diagnostics, products, calculators and advisory planning.

Public MCP Monitor MCP Directory Audit MIT License Official MCP Registry Version 2.0.0 Transport: Streamable HTTP Read-only MCP tools Prompts enabled Auth none

MCP endpoint · Human docs · Server card · Technical docs · Client examples

Atlarium Habitat Database MCP gives AI agents structured access to public Atlarium data and advisory functions for aquariums, marine tanks, coldwater systems, terrariums, paludariums and vivariums. It exposes 39 public read-only tools for species, plants, products, guides, algae, diseases, plant problems, medicines, compatibility, fertilization, calculators and complete habitat planning without exposing Atlarium accounts, private workspaces, admin APIs or write operations.

At A Glance

SurfaceValue
MCP endpointhttps://mcp.atlarium.bio/mcp
MCP version2.0.0
TransportStreamable HTTP
Authenticationnone
Tool surface39 public read-only tools
Prompts9 guided public prompts
Apps widgetui://widget/habitat-explorer.v3.html
Server cardhttps://mcp.atlarium.bio/.well-known/mcp/server-card.json
Human docshttps://atlarium.bio/mcp
Official MCP Registrybio.atlarium/habitat-database

https://atlarium.bio/mcp is documentation. The canonical Streamable HTTP MCP endpoint is https://mcp.atlarium.bio/mcp.

What You Can Build

Use casePublic tools
Species researchSearch fish, aquatic animals and plants, then retrieve localized structured profiles.
Tank compatibilityCompare species against tank size, pH, hardness and temperature constraints.
Diagnostic triageSearch algae, aquatic diseases, plant problems and treatment references from public profiles.
Product selectionExplore product categories, brands, equipment and fertilizers.
Fertilization supportSearch dosing regimes, calculate product doses, nutrient gaps and weekly totals.
Aquarium calculatorsEstimate tank volume, weight, water changes, water chemistry, unit conversions and equipment needs.
Habitat planningGenerate a complete advisory tank plan with species, plants, products, warnings, motivations and related guides.
Guide retrievalSearch and retrieve public Atlarium educational content.

All outputs are advisory. Compatibility checks, diagnostics, fertilization plans, equipment estimates, aquarium calculators and tank suggestions should be verified against real livestock, equipment, water chemistry, local regulations and husbandry constraints.

Quickstart

Use any MCP client that supports remote Streamable HTTP servers:

{
  "mcpServers": {
    "atlarium": {
      "type": "streamable-http",
      "url": "https://mcp.atlarium.bio/mcp"
    }
  }
}

Claude Code remote HTTP example:

claude mcp add --transport http atlarium https://mcp.atlarium.bio/mcp

Smoke check the live endpoint:

curl --fail --silent --show-error https://mcp.atlarium.bio/health
curl --fail --silent --show-error https://mcp.atlarium.bio/.well-known/mcp/server-card.json
pnpm mcp:monitor:public

Client Setup

Client or hostSetup
OpenAI Agents SDKSee examples/openai-agents-python for a Python agent that connects to the remote Streamable HTTP endpoint.
Claude CodeRun claude mcp add --transport http atlarium https://mcp.atlarium.bio/mcp, then ask Claude to use Atlarium.
CursorCopy examples/cursor/mcp.json into your Cursor MCP config and reload Cursor.
WindsurfCopy examples/windsurf/mcp_config.json into Windsurf MCP settings and refresh Cascade MCP servers.
VS CodeCopy examples/vscode/mcp.json; VS Code uses type: "http" for remote MCP servers.
AntigravityUse examples/antigravity/mcp.json only in builds that support remote MCP servers.
Generic Streamable HTTPUse the JSON-RPC examples in examples/generic-streamable-http.
ChatGPT AppsSubmitted for review with the Habitat Explorer widget; use examples/chatgpt-apps for review notes, smoke prompts and screenshot checklist. Public approval is not claimed.

These are compatibility notes, not vendor endorsements. Do not make vendor or directory support claims for ChatGPT, Claude, Cursor, Windsurf, VS Code, Antigravity or any directory unless that vendor has accepted the listing.

ChatGPT App And Widget

The server advertises a read-only MCP Apps / ChatGPT Apps widget resource for Apps-compatible hosts:

FieldValue
Resource URIui://widget/habitat-explorer.v3.html
MIME typetext/html;profile=mcp-app
WidgetAtlarium Habitat Explorer
Widget domainhttps://mcp.atlarium.bio
Output modePlain JSON text plus structuredContent

The widget renders public habitat results, profiles, diagnostic summaries, product results, calculator output, compatibility summaries, fertilization plans and habitat suggestions. It does not add write access and does not expose workspace, auth, admin, journal, schedule or measurement data.

ChatGPT Developer Mode screenshots and a short demo recording are checked in under docs/assets/chatgpt-screenshots/ and docs/assets/chatgpt-app-demo.mp4. The ChatGPT App is submitted / in review; do not describe it as approved or publicly available until OpenAI accepts it.

Tool Surface

AreaTools
Fish and aquatic animalssearch_fish, get_fish_profile
Aquatic plantssearch_plants, get_plant_profile
Products and guidessearch_products, get_product_profile, search_guides, get_guide
Diagnosticssearch_algae, get_algae_profile, search_diseases, get_disease_profile, search_plant_problems, get_plant_problem_profile, search_medicines, get_medicine_profile, match_diagnostic_profiles
Product cataloglist_product_categories, list_product_brands, search_equipment, get_equipment_profile, search_fertilizers, get_fertilizer_profile
Compatibility and watercheck_species_compatibility, get_water_parameters, suggest_species_for_tank
Fertilizationsearch_fertilization_regimes, get_fertilization_regime, calculate_fertilizer_dose, calculate_nutrient_gaps, calculate_weekly_dose_totals, generate_fertilization_plan
Calculatorscalculate_tank_volume, calculate_tank_weight, calculate_water_change, calculate_water_chemistry, convert_units, calculate_equipment_requirements
Habitat plannersuggest_habitat_for_tank

Every tool is registered with read-only annotations: readOnlyHint: true, openWorldHint: false, destructiveHint: false, idempotentHint: true.

Guided Prompts

The server advertises guided prompts for species search, compatibility, habitat planning, algae, diseases, plant problems, product selection, fertilization and tank calculations. Prompts guide clients toward the same public read-only tool surface; they do not add new capabilities or write access.

Tool Call Examples

Each example shows the MCP tool name and a minimal valid JSON input. Generic MCP clients receive plain JSON text; Apps-compatible hosts can also use structuredContent.

Catalog, plants and guides

search_fish

Purpose: search fish and aquatic animal profiles.

Prompt: "Find beginner-friendly small fish for a 90 L planted tank."

{
  "query": "tetra",
  "language": "en",
  "min_tank_liters": 40,
  "max_tank_liters": 120,
  "limit": 5
}

Output: matching public animal profiles with slugs, localized names, summary fields and public URLs when available.

get_fish_profile

Purpose: retrieve one structured fish or aquatic animal profile.

Prompt: "Show me the Atlarium profile for Neon Tetra."

{
  "slug": "paracheirodon-innesi",
  "language": "en"
}

Output: public profile data, care parameters, taxonomy, relationships and localized content where available.

search_plants

Purpose: search aquatic plant profiles.

Prompt: "Find easy foreground or midground plants for low-tech tanks."

{
  "query": "anubias",
  "language": "en",
  "difficulty": "easy",
  "limit": 5
}

Output: matching public plant profiles with placement, difficulty and public URLs when available.

get_plant_profile

Purpose: retrieve one structured aquatic plant profile.

Prompt: "Open the plant profile for Anubias barteri."

{
  "slug": "anubias-barteri",
  "language": "en"
}

Output: plant requirements, growth information, structured attributes and localized content where available.

search_products

Purpose: search public habitat products.

Prompt: "Find filter products for freshwater tanks."

{
  "query": "filter",
  "language": "en",
  "category": "filter",
  "limit": 5
}

Output: product results with brand/category information and public product URLs when available.

get_product_profile

Purpose: retrieve a public product profile.

Prompt: "Show the product profile for this catalog slug."

{
  "slug": "seachem/prime",
  "language": "en"
}

Output: structured public product data, use cases, brand details and links when available.

search_guides

Purpose: search Atlarium guides and educational content.

Prompt: "Find public guides about cycling an aquarium."

{
  "query": "cycling",
  "language": "en",
  "topic": "aquarium",
  "limit": 5
}

Output: guide matches with title, summary, topic and public URLs when available.

get_guide

Purpose: retrieve one public Atlarium guide.

Prompt: "Open the nitrogen cycle guide."

{
  "slug": "aquarium/nitrogen-cycle",
  "language": "en"
}

Output: structured public guide content and related metadata.

Diagnostics and treatment references

search_algae

Purpose: search algae diagnostic profiles.

Prompt: "Find algae profiles for green dust on aquarium glass."

{
  "query": "green dust",
  "language": "en",
  "difficulty": 2,
  "limit": 5
}

Output: algae matches with symptoms, likely causes and advisory guidance.

get_algae_profile

Purpose: retrieve one algae profile.

Prompt: "Show the profile for green spot algae."

{
  "slug": "green-spot-algae",
  "language": "en"
}

Output: structured public algae profile with symptoms, causes, prevention and advisory response.

search_diseases

Purpose: search aquatic disease profiles.

Prompt: "Find disease profiles for white spots on fish."

{
  "query": "white spots",
  "language": "en",
  "water_type": "freshwater",
  "limit": 5
}

Output: possible disease profiles and advisory treatment references.

get_disease_profile

Purpose: retrieve one disease profile.

Prompt: "Open the ich disease profile."

{
  "slug": "ich",
  "language": "en"
}

Output: symptoms, possible causes, treatment references and disclaimers.

search_plant_problems

Purpose: search aquatic plant deficiency, pest and environment profiles.

Prompt: "Find causes for yellowing leaves in aquarium plants."

{
  "query": "yellow leaves",
  "language": "en",
  "type": "deficiency",
  "limit": 5
}

Output: plant problem matches with symptoms, causes and advisory corrections.

get_plant_problem_profile

Purpose: retrieve one plant problem profile.

Prompt: "Open the nitrogen deficiency profile."

{
  "slug": "nitrogen-deficiency",
  "language": "en"
}

Output: structured deficiency/problem data and advisory guidance.

search_medicines

Purpose: search aquarium medicine and treatment product profiles.

Prompt: "Find public medicine references for ich treatment."

{
  "query": "ich",
  "language": "en",
  "limit": 5
}

Output: medicine/treatment references with public profile data where available.

get_medicine_profile

Purpose: retrieve one medicine profile.

Prompt: "Open the profile for a medicine slug."

{
  "slug": "malachite-green",
  "language": "en"
}

Output: structured public medicine reference, use notes and disclaimers.

match_diagnostic_profiles

Purpose: match symptom text across algae, disease, plant problem and medicine profiles.

Prompt: "Match fuzzy white growth on driftwood and stressed fish symptoms."

{
  "query": "white fuzzy growth and fish flashing",
  "language": "en",
  "limit": 8
}

Output: likely public diagnostic profiles grouped by relevance.

Products, equipment and fertilizers

list_product_categories

Purpose: list product categories for equipment and fertilizers.

Prompt: "Which public equipment categories are available?"

{
  "language": "en",
  "type": "equipment"
}

Output: localized public category names and identifiers.

list_product_brands

Purpose: list public product brands.

Prompt: "List brands matching Seachem."

{
  "language": "en",
  "query": "Seachem"
}

Output: matching public brand names and metadata.

search_equipment

Purpose: search aquarium and habitat equipment products.

Prompt: "Find heaters for a freshwater setup."

{
  "query": "heater",
  "language": "en",
  "use_case": "freshwater",
  "limit": 5
}

Output: equipment product matches with structured public catalog fields.

get_equipment_profile

Purpose: retrieve one equipment product profile.

Prompt: "Open this equipment profile."

{
  "slug": "eheim/thermocontrol",
  "language": "en"
}

Output: public equipment details, category, brand and usage fields when available.

search_fertilizers

Purpose: search fertilizer products and nutrient profiles.

Prompt: "Find liquid fertilizers for planted aquariums."

{
  "query": "flourish",
  "language": "en",
  "category": "fertilizer",
  "limit": 5
}

Output: fertilizer product matches and nutrient metadata when available.

get_fertilizer_profile

Purpose: retrieve one fertilizer profile.

Prompt: "Open this fertilizer profile."

{
  "slug": "seachem/flourish",
  "language": "en"
}

Output: structured fertilizer data, dosing metadata and public catalog details when available.

Compatibility, water and habitat suggestions

check_species_compatibility

Purpose: check basic compatibility among habitat species.

Prompt: "Can Neon Tetra and Corydoras paleatus work in a 90 L planted tank?"

{
  "species": ["Paracheirodon innesi", "Corydoras paleatus"],
  "language": "en",
  "tank_liters": 90,
  "ph": 6.8,
  "temperature": 24
}

Output: advisory compatibility signals, warnings, rationale and constraints.

get_water_parameters

Purpose: retrieve recommended water parameters for a fish or plant.

Prompt: "What water parameters does Neon Tetra prefer?"

{
  "slug": "paracheirodon-innesi",
  "type": "fish",
  "language": "en"
}

Output: public temperature, pH, GH/KH and related parameter guidance where available.

suggest_species_for_tank

Purpose: suggest aquatic species based on tank and water parameters.

Prompt: "Suggest beginner-friendly species for a 120 L planted tank."

{
  "tank_liters": 120,
  "language": "en",
  "ph": 6.8,
  "temperature": 24,
  "beginner_friendly": true,
  "planted_tank": true,
  "limit": 8
}

Output: public species suggestions with warnings and basic rationale.

suggest_habitat_for_tank

Purpose: suggest a complete public habitat plan.

Prompt: "Plan a balanced planted community habitat for 120 L."

{
  "tank_liters": 120,
  "language": "en",
  "ph": 6.8,
  "temperature": 24,
  "beginner_friendly": true,
  "planted_tank": true,
  "co2": "low",
  "light_level": "medium",
  "setup_intent": "community",
  "target_difficulty": "balanced",
  "water_type": "FRESHWATER",
  "limit": 8
}

Output: fish, invertebrates, plants, products, warnings, motivations, related guides and advisory disclaimer.

Fertilization

search_fertilization_regimes

Purpose: search fertilization regimes and dosing philosophies.

Prompt: "Find regimes for low-tech planted tanks."

{
  "query": "low tech",
  "language": "en",
  "topic": "planted",
  "limit": 5
}

Output: public regime matches with summary, topics and public URLs when available.

get_fertilization_regime

Purpose: retrieve one fertilization regime.

Prompt: "Open the Estimative Index regime profile."

{
  "slug": "estimative-index",
  "language": "en"
}

Output: structured public dosing philosophy/regime details.

calculate_fertilizer_dose

Purpose: calculate an advisory fertilizer dose for a catalog product and tank volume.

Prompt: "Calculate the dose of Seachem Flourish for 120 L."

{
  "brand_name": "Seachem",
  "product_name": "Flourish",
  "volume_liters": 120
}

Output: advisory dose estimate and product-related dosing context.

calculate_nutrient_gaps

Purpose: compare nutrient measurements against targets.

Prompt: "Compare my nitrate and potassium readings with planted tank targets."

{
  "language": "en",
  "volume_liters": 120,
  "measurements": [
    {
      "kind": "nitrogen_mg_l",
      "value": 5
    },
    {
      "kind": "potassium_mg_l",
      "value": 8
    }
  ],
  "targets": {
    "nitrogen_mg_l": 10,
    "potassium_mg_l": 15
  }
}

Output: nutrient gap estimates without saving measurements.

calculate_weekly_dose_totals

Purpose: calculate weekly totals for a non-persistent dosing plan.

Prompt: "Add up my weekly liquid fertilizer plan."

{
  "language": "en",
  "volume_liters": 120,
  "items": [
    {
      "brand_name": "Seachem",
      "product_name": "Flourish",
      "method": "LIQUID",
      "dose_value": 5,
      "dose_unit": "ml",
      "days_of_week": [1, 3, 5]
    }
  ]
}

Output: weekly product totals and schedule summary.

generate_fertilization_plan

Purpose: generate an advisory non-persistent fertilization plan.

Prompt: "Generate a balanced planted tank fertilization plan for 120 L."

{
  "language": "en",
  "volume_liters": 120,
  "regime": "balanced",
  "targets": {
    "nitrogen_mg_l": 10,
    "phosphorus_mg_l": 1,
    "potassium_mg_l": 15,
    "iron_mg_l": 0.1
  }
}

Output: advisory plan, nutrient targets, product suggestions and disclaimer.

Calculators

calculate_tank_volume

Purpose: calculate gross and net aquarium volume estimates.

Prompt: "Calculate net volume for a 60 x 30 x 36 cm tank."

{
  "shape": "rect",
  "length_cm": 60,
  "width_cm": 30,
  "height_cm": 36,
  "substrate_depth_cm": 5,
  "hardscape_displacement_liters": 4
}

Output: gross and net volume estimates.

calculate_tank_weight

Purpose: estimate aquarium weight from dimensions and material inputs.

Prompt: "Estimate the filled weight of a 120 L aquarium."

{
  "shape": "rect",
  "length_cm": 80,
  "width_cm": 35,
  "height_cm": 45,
  "glass_thickness_mm": 8,
  "substrate_depth_cm": 6,
  "hardscape_weight_kg": 12,
  "equipment_weight_kg": 5
}

Output: advisory total weight estimate and component breakdown.

calculate_water_change

Purpose: calculate water change volume, weekly totals and dilution estimates.

Prompt: "How much water is a 30 percent change on 120 L twice per week?"

{
  "volume_liters": 120,
  "change_percent": 30,
  "changes_per_week": 2
}

Output: per-change volume and weekly total estimates.

calculate_water_chemistry

Purpose: calculate hardness conversions, CO2, salinity and water mixing.

Prompt: "Estimate CO2 from pH 6.8 and KH 4."

{
  "co2": {
    "ph": 6.8,
    "kh_dkh": 4
  },
  "general_hardness": {
    "unit": "dgh",
    "value": 8
  }
}

Output: public chemistry conversions and advisory estimates.

convert_units

Purpose: convert aquarium-relevant units.

Prompt: "Convert 120 liters and 24 C."

{
  "volume": {
    "unit": "l",
    "value": 120
  },
  "temperature": {
    "unit": "c",
    "value": 24
  }
}

Output: converted values for supported units.

calculate_equipment_requirements

Purpose: calculate advisory heater, lighting and electricity requirements.

Prompt: "Estimate heater and lighting needs for a 120 L aquarium."

{
  "heater": {
    "volume_liters": 120,
    "ambient_c": 20,
    "target_c": 25,
    "insulation": "normal"
  },
  "lighting": {
    "volume_liters": 120,
    "lumens": 3600
  },
  "electricity": {
    "wattage": 100,
    "hours_per_day": 8,
    "cost_per_kwh": 0.25
  }
}

Output: advisory equipment estimates and electricity usage/cost summary.

Discovery And Directory Status

DirectoryStatus
Official MCP RegistryPublished as bio.atlarium/habitat-database; publish the V2 server.json update after coordinated endpoint validation.
GlamaOwnership verified; listing healthy with 39 tools and canonical V2 description.
SmitheryPublished at ilgrafico79/atlarium-habitat-database; latest release SUCCESS, quality score 96/100, parameter descriptions 39/39, custom icon uploaded. Technical verification checks pass; full Smithery verification still requires a paid developer plan.
MCP.soSubmitted through the public GitHub issue flow; no public listing badge yet.
PulseMCPListed publicly; verify badge policy before adding a badge.
ChatGPT AppSubmitted / in review; no public approval claim yet.

Publication tracking and reusable submission copy live in docs/publication-checklist.md, docs/directory-submission-payloads.md and docs/mcp-submission-cockpit.md.

Local Development

pnpm install
cp .env.example .env
pnpm dev

By default the server listens on http://localhost:43118.

Local development against the Atlarium app:

ATLARIUM_API_BASE_URL=http://localhost:43117/api/public/mcp/v1 pnpm dev

Configuration

  • MCP_PUBLIC_BASE_URL: public base URL, production default https://mcp.atlarium.bio.
  • ATLARIUM_API_BASE_URL: public read-only Atlarium API base URL.
  • MCP_ALLOWED_HOSTS: comma-separated host allowlist used for DNS rebinding protection.
  • MCP_TRUST_PROXY: Express proxy trust setting; default 1 assumes one trusted reverse proxy in production.
  • ATLARIUM_API_TIMEOUT_MS: upstream public API timeout in milliseconds.
  • ATLARIUM_API_RESPONSE_MAX_BYTES: maximum upstream JSON response size.
  • OPENAI_APPS_CHALLENGE_TOKEN: public OpenAI Apps domain verification token served from /.well-known/openai-apps-challenge.

Production deployments must run behind a TLS-terminating reverse proxy or Ingress that overwrites X-Forwarded-For, X-Forwarded-Host and X-Forwarded-Proto before traffic reaches this server.

Quality Gate

pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm audit:prod
docker build -t atlarium-mcp:local .

With a local server running:

pnpm mcp:conformance

With production DNS and TLS live:

pnpm mcp:monitor:public
pnpm directories:submit -- --check
pnpm mcp:validate:public
pnpm mcp:conformance:public

Contributing

See CONTRIBUTING.md. Public tool changes must update the server implementation, tests, server-card metadata, server.json, README.md, docs/mcp.md, docs, examples and directory publication notes in the same release.

Security

See SECURITY.md. Do not report sensitive security issues in public GitHub issues.

License

MIT. See LICENSE.

Server Config

{
  "mcpServers": {
    "atlarium-habitat-database": {
      "url": "https://mcp.atlarium.bio/mcp",
      "transport": "streamable-http"
    }
  }
}
Project Info
Created At
2 hours ago
Updated At
2 hours ago
Author Name
techgardeners
Star
-
Language
-
License
-
Category

Recommend Servers

View All
PQC Khepra MCP Server: Agentic Security Attestation Framework
@NouchiX

KHEPRA MCP Server smithery badge MCP Registry License Container PQC Sovereign compliance engine with 36,195 STIG/CCI/NIST/CMMC mappings. Air-gappable. Zero token costs. Run ert_scan → get a Godfather Report with dollar-denominated business impact. The only MCP compliance server that runs on your metal — with the World's First DoD PQC STIG built in. PQC-01-STIG-V1R1 — Full Whitepaper → 17 controls covering CNSA 2.0, FIPS 203/204/205, and the NSA's May 2026 MCP security advisory. The world's first DoD-style Post-Quantum Cryptography STIG, including the first PQC controls for agentic AI and MCP deployments. Tiers Tier License Key Tools Telemetry Egress Community ❌ Not required pqc_stig + 12 core tools Opt-in Dark Crypto Intel Zero (sovereign mode) Sovereign ✅ Required All 34 tools Zero Zero Pharaoh ✅ Required All 34 tools + priority support Zero Zero Community tier is free. Run pqc_stig to assess your project's quantum readiness against PQC-01-STIG-V1R1 — the World's First DoD-style Post-Quantum Cryptography STIG — no license key needed. What It Does KHEPRA MCP connects your AI assistant directly to a hardened compliance engine. Ask Claude or any MCP client to scan a system, map findings to STIG/NIST/CMMC controls, and generate an executive-ready risk report — all without sending data to external APIs. Key capabilities: 36,195 STIG/CCI/NIST 800-53/800-171/CMMC mappings (offline, bundled) Post-quantum cryptographic attestation on every tool call (ML-DSA-65 / FIPS 204) World's First DoD PQC STIG — 17 controls covering CNSA 2.0 / FIPS 203/204/205 + agentic AI / MCP (PQC-01-STIG-V1R1) Godfather Report: dollar-denominated business impact per finding (FAIR model) Air-gap and SCIF compatible — sovereign/ironbank modes make zero egress calls Flat annual licensing — no per-token or per-query charges Runs on your metal: on-prem, DoD, IC, classified environments Installation There are two delivery methods: Docker (recommended, no build required) and compiled binary (fastest startup, required for air-gap). Both support the same environment variables and all MCP clients. Choose your path: Method Best For Startup Docker Most users, easiest setup ~2s Compiled Binary Air-gap, SCIF, performance ~300ms Option A: Docker (Recommended) Requires Docker Desktop or Docker Engine. The image is pre-built and ships the full compliance database — no additional downloads in sovereign mode. # Pull once docker pull ghcr.io/nouchix/pqc-khepra-mcp:latest # Test it (should print the initialize response and exit) echo '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}},"id":0}' \ | docker run --rm -i -e KHEPRA_MODE=sovereign ghcr.io/nouchix/pqc-khepra-mcp:latest Option B: Compiled Binary Requires Go 1.21+ for building, or download a pre-built release from GitHub Releases. git clone https://github.com/nouchix/PQC-Khepra-MCP.git cd PQC-Khepra-MCP # Build (cross-compile for your OS) go build -o khepra-mcp ./cmd/khepra-mcp # Linux / macOS go build -o khepra-mcp.exe ./cmd/khepra-mcp # Windows # Test the binary echo '{"jsonrpc":"2.0","method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}},"id":0}' \ | KHEPRA_MODE=sovereign ./khepra-mcp Windows — using the batch launcher The repo ships a run-mcp.bat launcher for Windows. It uses the pre-built binary (fast path) and falls back to go run automatically: :: run-mcp.bat is already in the repo at the root of PQC-Khepra-MCP :: Point your MCP client to: cmd /c C:\path\to\PQC-Khepra-MCP\run-mcp.bat Adding to Your AI Client Claude Desktop Config file location: macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json Community tier — Docker (macOS / Linux) { "mcpServers": { "khepra": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "-v", "/var/lib/khepra:/var/lib/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Community tier — Docker (Windows) { "mcpServers": { "khepra": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "-v", "C:\\Users\\YourName\\.khepra:/var/lib/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Community tier — Binary (Windows, fastest startup) { "mcpServers": { "khepra": { "command": "C:\\path\\to\\PQC-Khepra-MCP\\khepra-mcp.exe", "args": [], "env": { "KHEPRA_MODE": "sovereign", "KHEPRA_NETWORK_POLICY": "lan", "MCP_PQC_ENABLED": "true", "KHEPRA_MANIFEST_PATH": "C:\\path\\to\\PQC-Khepra-MCP\\manifest.json" } } } } Community tier — Binary via batch launcher (Windows) { "mcpServers": { "khepra": { "command": "cmd", "args": ["/c", "C:\\path\\to\\PQC-Khepra-MCP\\run-mcp.bat"], "env": { "KHEPRA_MODE": "sovereign", "KHEPRA_NETWORK_POLICY": "lan", "MCP_PQC_ENABLED": "true" } } } } Sovereign / Pharaoh tier (with license key) { "mcpServers": { "khepra": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_LICENSE_KEY", "-e", "KHEPRA_MODE=sovereign", "-v", "/var/lib/khepra:/var/lib/khepra", "-v", "/var/log/khepra:/var/log/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ], "env": { "KHEPRA_LICENSE_KEY": "YOUR_LICENSE_KEY_HERE" } } } } After editing, restart Claude Desktop. Verify in Settings → Developer — you should see khepra with status running and all tools listed. Cursor Config file: .cursor/mcp.json in your project root, or ~/.cursor/mcp.json globally. Docker (macOS / Linux) { "servers": { "khepra": { "type": "stdio", "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "-v", "/var/lib/khepra:/var/lib/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Binary (macOS / Linux) { "servers": { "khepra": { "type": "stdio", "command": "/path/to/khepra-mcp", "args": [], "env": { "KHEPRA_MODE": "sovereign", "KHEPRA_MANIFEST_PATH": "/path/to/PQC-Khepra-MCP/manifest.json" } } } } Binary (Windows) { "servers": { "khepra": { "type": "stdio", "command": "C:\\path\\to\\PQC-Khepra-MCP\\khepra-mcp.exe", "args": [], "env": { "KHEPRA_MODE": "sovereign", "KHEPRA_MANIFEST_PATH": "C:\\path\\to\\PQC-Khepra-MCP\\manifest.json" } } } } VS Code (with GitHub Copilot or Cline extension) Config file: .vscode/mcp.json in your project, or user settings. { "servers": { "khepra": { "type": "stdio", "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "-v", "${env:HOME}/.khepra:/var/lib/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Or via user settings.json for the Cline extension: { "cline.mcpServers": { "khepra": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Windsurf Config file: ~/.codeium/windsurf/mcp_config.json { "mcpServers": { "khepra": { "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "-v", "/var/lib/khepra:/var/lib/khepra", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } } Continue.dev Config file: ~/.continue/config.json — add to the experimental.modelContextProtocolServers array: { "experimental": { "modelContextProtocolServers": [ { "name": "khepra", "transport": { "type": "stdio", "command": "docker", "args": [ "run", "--rm", "-i", "-e", "KHEPRA_MODE=sovereign", "ghcr.io/nouchix/pqc-khepra-mcp:latest" ] } } ] } } Cloud / SaaS AI Tools (Claude.ai, ChatGPT, Gemini, etc.) Cloud-based AI tools cannot directly spawn local subprocesses — they need an HTTP/SSE bridge to reach your local KHEPRA server. There are two approaches: Approach 1 — mcp-remote proxy (easiest, no server required) mcp-remote tunnels a local stdio MCP server over HTTPS, making it accessible to any cloud tool. This is what the Kaggle MCP entry in the config above uses. # Install once npm install -g mcp-remote # Start the bridge (exposes your local KHEPRA server at https://localhost:3000) KHEPRA_MODE=sovereign mcp-remote \ --server "docker run --rm -i -e KHEPRA_MODE=sovereign ghcr.io/nouchix/pqc-khepra-mcp:latest" \ --port 3000 Then in Claude.ai (or any cloud tool that accepts MCP SSE URLs): MCP Server URL: http://localhost:3000/sse Security note: mcp-remote binds to localhost by default. Do not expose it to the public internet without TLS and authentication. In sovereign/ironbank mode, KHEPRA itself makes zero egress calls — only the bridge connection to the cloud tool carries data. Approach 2 — Self-hosted HTTP/SSE endpoint For teams running KHEPRA on a shared server (e.g., Hostinger VPS at IP_ADDRESS), start the server in HTTP mode: # On your server — start KHEPRA in HTTP/SSE mode docker run -d \ -e KHEPRA_MODE=hybrid \ -e KHEPRA_HTTP_PORT=8443 \ -e KHEPRA_LICENSE_KEY="${KHEPRA_LICENSE_KEY}" \ -p 8443:8443 \ ghcr.io/nouchix/pqc-khepra-mcp:latest # Point your cloud tool to: # https://your-server.com:8443/sse Then configure any cloud AI tool that supports MCP SSE: Cloud Tool Where to add MCP URL Claude.ai (Pro/Team) Settings → Integrations → MCP Servers OpenAI Assistants API tools field with type: "mcp" Gemini for Workspace Extensions → Custom MCP (preview) Glama.ai Workspace → MCP Servers Smithery.ai Catalog → Self-hosted server Note: HTTP/SSE mode (hybrid/edge) enables external connections. Always terminate TLS at a reverse proxy (nginx/Caddy) and restrict access by IP or API key. The sovereign mode refuses HTTP connections by design — air-gap integrity is preserved. Approach 3 — Smithery / MCP Registry (Community tier only) KHEPRA is listed on Smithery.ai and the MCP Registry. Cloud tools that support registry-based discovery can install it directly: Registry ID: io.github.nouchix/pqc-khepra-mcp This runs the Community tier via Smithery's managed infrastructure. For sovereign deployment (air-gap, your data stays on your metal), use Options A or B above. Validation — Test Your Installation Run this from your terminal to verify the server responds correctly: # Docker echo '{"jsonrpc":"2.0","method":"tools/list","params":{},"id":1}' \ | docker run --rm -i -e KHEPRA_MODE=sovereign ghcr.io/nouchix/pqc-khepra-mcp:latest # Binary (Linux / macOS) echo '{"jsonrpc":"2.0","method":"tools/list","params":{},"id":1}' \ | KHEPRA_MODE=sovereign ./khepra-mcp # Binary (Windows PowerShell) '{"jsonrpc":"2.0","method":"tools/list","params":{},"id":1}' \ | & ".\khepra-mcp.exe" Expected output: a JSON-RPC response listing all available tools. If you see "tools": [...] with 12+ entries — you're connected. Full protocol validation (Windows) # Runs the complete Claude Desktop handshake sequence and validates all responses .\scripts\test-mcp-handshake.ps1 -BinaryPath ".\khepra-mcp.exe" # Expected output: # [PASS] initialize | protocolVersion=2025-11-25 | listChanged=False # [PASS] tools/list | count=34 # TRL-10 READY - Server passes full Claude Desktop protocol validation MCP Tools Community Tier (Free — No License Key) pqc_stig — World's First DoD PQC STIG ⭐ Assesses a source code directory against PQC-01-STIG-V1R1: 12 controls covering CNSA 2.0 algorithm approval, ML-DSA-65 key strength, ML-KEM-768 encapsulation, hybrid cryptography, key storage, constant-time implementation, and certificate chain requirements. pqc_stig(scan_path?: string, profile?: "quick" | "full" | "executive") Example: "Run pqc_stig on my project and tell me if I'm CNSA 2.0 compliant" nist_map Map CCI identifiers or STIG findings to NIST 800-53 Rev 5 controls. khepra_query_stig Query the 36,195-row STIG/CCI/NIST/CMMC compliance database by control ID. dark_crypto_contribute (opt-in) Contribute anonymized cryptographic algorithm telemetry to the SouHimBou AI Dark Crypto Intelligence Network. No PII. Opt-in only — never fires without explicit invocation. Sovereign / Pharaoh Tier ert_scan Enterprise Risk & Threat scan across STIG, NIST 800-53, NIST 800-171, CMMC, and FedRAMP. Returns Godfather Report with dollar-denominated business impact. ert_scan(target: string, frameworks?: string[], output_format?: "godfather" | "json" | "csv") Example: "Run ert_scan on /etc and generate a Godfather Report" stig_check Automated RHEL-09-STIG-V1R3 compliance scan against a live system or configuration path. cmmc_assess Full CMMC Level 1, 2, or 3 assessment with gap analysis and POA&M generation. godfather_report Generate an executive Godfather Report from prior scan results: top 10 findings ranked by dollar exposure, remediation ROI, and FAIR model business impact. + 20 additional tools agent_record, dag_attestation, flight_export, khepra_get_dag_chain, nhi_inventory, acp_status, owasp_agent_assess, khepra_export_attestation, khepra_export_poam, khepra_get_compliance_score, ert_crypto, ert_readiness, stig_benchmark, ir_analysis, vuln_hunter, sbom_generate, threat_model, khepra_query_threat_intel, discover_assets, and more. The Godfather Report Unlike compliance scanners that output a wall of CVEs, KHEPRA translates findings into the language executives care about: Finding: RHEL-09-212030 — No FIPS-validated crypto on /etc/ssh Severity: CAT I (HIGH) Business Impact: $2.4M estimated breach exposure (FAIR model) Remediation Cost: $800 (4 hours engineer time) ROI: 3,000x Every finding includes control ID, framework mapping, business impact in dollars, remediation cost estimate, and ROI. Deployment Modes Mode Air-Gap Egress Telemetry Use Case sovereign ✅ Yes Zero Zero On-prem, SCIF, classified (DEFAULT) ironbank ✅ Yes Zero Zero DoD/IC production, FIPS-only hybrid ❌ No LAN Zero Edge + cloud coordination edge ❌ No Unrestricted Zero Fully stateless SaaS Set via KHEPRA_MODE environment variable. Unknown values are rejected at startup and fall back to sovereign (fail-closed). Environment Variables Variable Required Default Description KHEPRA_LICENSE_KEY Sovereign/Pharaoh only — License key. Community tier runs without one. Get at nouchix.com KHEPRA_MODE No sovereign Deployment mode: sovereign, ironbank, hybrid, edge KHEPRA_MANIFEST_PATH No manifest.json Path to signed tool manifest file KHEPRA_HOME No /var/lib/khepra Data and compliance DB directory KHEPRA_LOG_DIR No /var/log/khepra Log directory KHEPRA_DAG_PATH No ~/.khepra/dag DAG audit chain storage path KHEPRA_AUDIT_LOG_PATH No ~/.khepra/audit.ndjson Signed audit log path KHEPRA_MAX_CONCURRENT No 5 Max concurrent tool calls per agent KHEPRA_NETWORK_POLICY No lan Network scope: lan, none, unrestricted MCP_PQC_ENABLED No true Enable ML-DSA-65 PQC attestation on all responses Air-Gap & SCIF Deployment KHEPRA makes zero external network calls in sovereign and ironbank modes: License validated offline via ML-DSA-65 signed license.adinkhepra file Compliance databases (36,195 mappings) bundled in container — no external downloads No telemetry, no heartbeat, no egress — verified at the transport layer # Transfer image to air-gapped network docker save ghcr.io/nouchix/pqc-khepra-mcp:latest | gzip > khepra-mcp.tar.gz # On air-gapped host: docker load < khepra-mcp.tar.gz Note on telemetry: The dark_crypto_contribute tool (Community tier) sends anonymized cryptographic algorithm telemetry to the SouHimBou AI intelligence network only when explicitly invoked by the user. It is never triggered automatically. In sovereign/ironbank mode, all network calls are blocked at the transport layer regardless. Compliance Coverage Framework Version Mappings STIG (RHEL 9) V1R3 Automated scanning NIST 800-53 Rev 5 2,120 CCIs NIST 800-171 Rev 2 320 controls CMMC Level 3 Full practice set FedRAMP High Baseline scanning PQC-01-STIG-V1R1 V1R1 17 PQC controls (CNSA 2.0) Total 36,195+ mappings Licensing Flat annual licensing — no per-token or per-query charges. Tier Cost License Key Tools Community Free Not required pqc_stig + 12 core tools Sovereign Annual flat fee Required All 34 tools, air-gap, on-prem Pharaoh Annual flat fee Required All 34 tools + priority support + SLA Community tier is permanently free — contribute to open-source PQC adoption Sovereign/Pharaoh: contact contact@nouchix.com or visit nouchix.com Security Reporting Vulnerabilities Do not open public issues for security vulnerabilities. Report privately via GitHub Security Advisories or email support@nouchix.com. SLA Target Acknowledgement 24 hours Initial assessment 5 business days Patch / mitigation (Critical) 30 days We accept encrypted reports via PGP (keys/security_contact.asc) and Post-Quantum channels (Dilithium / ML-DSA-65 keys in keys/). See SECURITY.md for the full disclosure policy and ASAF event taxonomy. Security Posture Deploying advanced post-quantum cryptography, air-gapped isolation, and comprehensive STIG mappings — built in direct alignment with NSA & ASD Model Context Protocol guidelines. NSA & ASD MCP Security Alignment The NSA and Australian Signals Directorate (ASD) have published specific threat vectors for AI systems interacting with local environments. KHEPRA MCP is explicitly designed to mitigate every identified vector: NSA/ASD Requirement KHEPRA Implementation Cryptographic validation of tool responses ML-DSA-65 (Dilithium) signatures on all JSON-RPC 2.0 payloads Input validation & sanitization Parameter injection resistance via strict JSON Schema validation Principle of least privilege credentials Short-lived ephemeral tokens tied to specific task execution windows Comprehensive audit logging Tamper-evident events compiled into an immutable DAG structure Resource consumption limits Rate limiting + backpressure for LLM request loops Authorization gates for sensitive actions Human-in-the-loop gate for destructive state changes Environment isolation Containerized execution with zero-egress sovereign mode Software supply chain integrity Manifest pinning for all loaded tools and dependencies Network exposure reduction Air-gappable — zero internet transit in sovereign/ironbank modes Post-quantum resilience PQC-signed DAG trail protecting against harvest-now-decrypt-later Compliance Certifications Framework Status Coverage CMMC Level 2 ✅ Automates evidence collection for AU, CM, SI, SC domains NIST SP 800-171 Rev 2 ✅ Logging, accountability, system integrity NIST SP 800-53 Rev 5 ✅ Continuous monitoring (AU-2, SI-4) FIPS 203 (ML-KEM) ✅ Key encapsulation for secure transit FIPS 204 (ML-DSA) ✅ Digital signatures for payload authentication NSM-10 PQC Mandate ✅ National Security Memorandum 10 compliance DFARS 252.204-7012 ✅ Immutable forensic trails for cyber incident reporting NSA MCP Security Guidelines ✅ Direct mapping to all published AI agent threat mitigations Live Deployment — Physical Edge Running continuously on constrained edge hardware since May 12, 2026 to prove efficiency in sovereign environments: Hardware: Raspberry Pi 2 · 1 GB RAM · 900 MHz ARM · Live Spectrum Router SCADA Pod: STM32U585 / QRB2210 · Modbus TCP · MQTT · Zephyr RTOS 3.4+ · Live Dilithium Signature Verification Controls active: 3 open ports secured · 12 STIG violations detected · 100% file integrity monitoring (AIDE) · 24/7 continuous operation Academic Validation Event Date Institution UAlbany AI Plus Symposium 2026 — "KHEPRA Protocol: Quantum-Resilient Agentic

an hour ago