Atlarium Habitat Database MCP
by atlarium.bio · remote · no sign-in to list tools · v2.0.3 · published by bio.atlarium
Structured habitat data and advisory tools for aquariums, marine tanks, terrariums and paludariums.
39 tools: 12 change things and 27 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things12Claude Code: ask: see these tools
- Only reads27Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http habitat-database https://mcp.atlarium.bio/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "generate_fertilization_plan" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_fertilization_plan" says "generate": a word for a change.
- Warnconvert_units
The server marks "convert_units" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "convert_units" says "convert": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
39 tools
Changes things 12Claude Code: ask
calculate_equipment_requirementsCalculate advisory heater, lighting and electricity requirements.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate advisory heater, lighting and electricity requirements.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_fertilizer_doseCalculate an advisory fertilizer dose for a public catalog product and tank volume.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate an advisory fertilizer dose for a public catalog product and tank volume.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_tank_volumeCalculate gross and net aquarium volume estimates from dimensions.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate gross and net aquarium volume estimates from dimensions.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_tank_weightCalculate advisory aquarium weight estimates from dimensions and material inputs.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate advisory aquarium weight estimates from dimensions and material inputs.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_water_changeCalculate water change volume, weekly totals and dilution estimates.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate water change volume, weekly totals and dilution estimates.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_water_chemistryCalculate public water chemistry conversions, CO2, salinity and water-mix estimates.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate public water chemistry conversions, CO2, salinity and water-mix estimates.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
calculate_weekly_dose_totalsCalculate weekly fertilizer totals for a supplied non-persistent dosing plan.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate weekly fertilizer totals for a supplied non-persistent dosing plan.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
check_species_compatibilityCheck basic compatibility information between habitat species using Atlarium data.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Check basic compatibility information between habitat species using Atlarium data.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
convert_unitsConvert aquarium-relevant temperature, length, weight and volume units.1 finding
Why it is in this group
- The name "convert_units" says "convert": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "convert_units" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "convert_units" says "convert": a word for a change.
Description, as the server wrote it Convert aquarium-relevant temperature, length, weight and volume units.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
generate_fertilization_planGenerate an advisory non-persistent fertilization plan from public Atlarium catalog data.1 finding
Why it is in this group
- The name "generate_fertilization_plan" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_fertilization_plan" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_fertilization_plan" says "generate": a word for a change.
Description, as the server wrote it Generate an advisory non-persistent fertilization plan from public Atlarium catalog data.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
suggest_habitat_for_tankSuggest a complete public habitat plan with species, plants, products, warnings, motivations and related guides.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Suggest a complete public habitat plan with species, plants, products, warnings, motivations and related guides.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
suggest_species_for_tankSuggest compatible aquatic species based on tank size and water parameters.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Suggest compatible aquatic species based on tank size and water parameters.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
Only reads 27Claude Code: allow
calculate_nutrient_gapsCompare nutrient targets with supplied measurements without saving user data.No findings
Why it is in this group
- The description's first verb is "compare": a word for reading.
Description, as the server wrote it Compare nutrient targets with supplied measurements without saving user data.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_algae_profileGet a structured public algae diagnostic profile using the exact slug returned by search_algae.No findings
Why it is in this group
- The name "get_algae_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public algae diagnostic profile using the exact slug returned by search_algae.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_disease_profileGet a structured public aquatic disease profile using the exact slug returned by search_diseases.No findings
Why it is in this group
- The name "get_disease_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public aquatic disease profile using the exact slug returned by search_diseases.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_equipment_profileGet a structured public equipment product profile using the exact slug returned by search_equipment.No findings
Why it is in this group
- The name "get_equipment_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public equipment product profile using the exact slug returned by search_equipment.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_fertilization_regimeGet a structured public fertilization regime using the exact slug returned by search_fertilization_regimes.No findings
Why it is in this group
- The name "get_fertilization_regime" says "get": a word for reading.
Description, as the server wrote it Get a structured public fertilization regime using the exact slug returned by search_fertilization_regimes.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_fertilizer_profileGet a structured public fertilizer product profile using the exact slug returned by search_fertilizers.No findings
Why it is in this group
- The name "get_fertilizer_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public fertilizer product profile using the exact slug returned by search_fertilizers.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_fish_profileGet a structured fish or aquatic animal profile using the exact slug returned by search_fish.No findings
Why it is in this group
- The name "get_fish_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured fish or aquatic animal profile using the exact slug returned by search_fish.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_guideGet a structured public Atlarium guide using the exact slug returned by search_guides.No findings
Why it is in this group
- The name "get_guide" says "get": a word for reading.
Description, as the server wrote it Get a structured public Atlarium guide using the exact slug returned by search_guides.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_medicine_profileGet a structured public aquarium medicine profile using the exact slug returned by search_medicines.No findings
Why it is in this group
- The name "get_medicine_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public aquarium medicine profile using the exact slug returned by search_medicines.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_plant_problem_profileGet a structured public aquatic plant problem or deficiency profile using the exact slug returned by search_plant_problems.No findings
Why it is in this group
- The name "get_plant_problem_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public aquatic plant problem or deficiency profile using the exact slug returned by search_plant_problems.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_plant_profileGet a structured aquatic plant profile using the exact slug returned by search_plants.No findings
Why it is in this group
- The name "get_plant_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured aquatic plant profile using the exact slug returned by search_plants.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_product_profileGet a structured public habitat product profile using the exact slug returned by search_products.No findings
Why it is in this group
- The name "get_product_profile" says "get": a word for reading.
Description, as the server wrote it Get a structured public habitat product profile using the exact slug returned by search_products.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
get_water_parametersGet recommended water parameters using the exact slug returned by search_fish or search_plants.No findings
Why it is in this group
- The name "get_water_parameters" says "get": a word for reading.
Description, as the server wrote it Get recommended water parameters using the exact slug returned by search_fish or search_plants.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
list_product_brandsList public Atlarium product brands.No findings
Why it is in this group
- The name "list_product_brands" says "list": a word for reading.
Description, as the server wrote it List public Atlarium product brands.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
list_product_categoriesList public Atlarium product categories for equipment and fertilizers.No findings
Why it is in this group
- The name "list_product_categories" says "list": a word for reading.
Description, as the server wrote it List public Atlarium product categories for equipment and fertilizers.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
match_diagnostic_profilesFind likely public algae, disease, plant problem and medicine profiles from a symptom query.No findings
Why it is in this group
- The description's first verb is "find": a word for reading.
Description, as the server wrote it Find likely public algae, disease, plant problem and medicine profiles from a symptom query.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_algaeSearch public algae diagnostic profiles with symptoms, causes and treatment guidance.No findings
Why it is in this group
- The name "search_algae" says "search": a word for reading.
Description, as the server wrote it Search public algae diagnostic profiles with symptoms, causes and treatment guidance.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_diseasesSearch public aquatic disease diagnostic profiles and advisory treatment information.No findings
Why it is in this group
- The name "search_diseases" says "search": a word for reading.
Description, as the server wrote it Search public aquatic disease diagnostic profiles and advisory treatment information.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_equipmentSearch public aquarium and habitat equipment products.No findings
Why it is in this group
- The name "search_equipment" says "search": a word for reading.
Description, as the server wrote it Search public aquarium and habitat equipment products.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_fertilization_regimesSearch public fertilization regimes and dosing philosophies.No findings
Why it is in this group
- The name "search_fertilization_regimes" says "search": a word for reading.
Description, as the server wrote it Search public fertilization regimes and dosing philosophies.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_fertilizersSearch public aquarium fertilizer products and nutrient profiles.No findings
Why it is in this group
- The name "search_fertilizers" says "search": a word for reading.
Description, as the server wrote it Search public aquarium fertilizer products and nutrient profiles.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_fishSearch fish and aquatic animal profiles in the Atlarium habitat database.No findings
Why it is in this group
- The name "search_fish" says "search": a word for reading.
Description, as the server wrote it Search fish and aquatic animal profiles in the Atlarium habitat database.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_guidesSearch Atlarium habitat guides and educational content.No findings
Why it is in this group
- The name "search_guides" says "search": a word for reading.
Description, as the server wrote it Search Atlarium habitat guides and educational content.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_medicinesSearch public aquarium medicine and treatment product profiles.No findings
Why it is in this group
- The name "search_medicines" says "search": a word for reading.
Description, as the server wrote it Search public aquarium medicine and treatment product profiles.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_plant_problemsSearch public aquatic plant deficiency, pest and environmental problem profiles.No findings
Why it is in this group
- The name "search_plant_problems" says "search": a word for reading.
Description, as the server wrote it Search public aquatic plant deficiency, pest and environmental problem profiles.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_plantsSearch aquatic plants in the Atlarium database.No findings
Why it is in this group
- The name "search_plants" says "search": a word for reading.
Description, as the server wrote it Search aquatic plants in the Atlarium database.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
search_productsSearch public habitat products in the Atlarium database.No findings
Why it is in this group
- The name "search_products" says "search": a word for reading.
Description, as the server wrote it Search public habitat products in the Atlarium database.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- destructiveHint: false
- idempotentHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 2.0.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http habitat-database https://mcp.atlarium.bio/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__habitat-database__search_fish",
"mcp__habitat-database__get_fish_profile",
"mcp__habitat-database__search_plants",
"mcp__habitat-database__get_plant_profile",
"mcp__habitat-database__search_products",
"mcp__habitat-database__get_product_profile",
"mcp__habitat-database__get_water_parameters",
"mcp__habitat-database__search_guides",
"mcp__habitat-database__get_guide",
"mcp__habitat-database__search_algae",
"mcp__habitat-database__get_algae_profile",
"mcp__habitat-database__search_diseases",
"mcp__habitat-database__get_disease_profile",
"mcp__habitat-database__search_plant_problems",
"mcp__habitat-database__get_plant_problem_profile",
"mcp__habitat-database__search_medicines",
"mcp__habitat-database__get_medicine_profile",
"mcp__habitat-database__match_diagnostic_profiles",
"mcp__habitat-database__list_product_categories",
"mcp__habitat-database__list_product_brands",
"mcp__habitat-database__search_equipment",
"mcp__habitat-database__get_equipment_profile",
"mcp__habitat-database__search_fertilizers",
"mcp__habitat-database__get_fertilizer_profile",
"mcp__habitat-database__search_fertilization_regimes",
"mcp__habitat-database__get_fertilization_regime",
"mcp__habitat-database__calculate_nutrient_gaps"
],
"ask": [
"mcp__habitat-database__check_species_compatibility",
"mcp__habitat-database__suggest_species_for_tank",
"mcp__habitat-database__calculate_fertilizer_dose",
"mcp__habitat-database__calculate_weekly_dose_totals",
"mcp__habitat-database__generate_fertilization_plan",
"mcp__habitat-database__calculate_tank_volume",
"mcp__habitat-database__calculate_tank_weight",
"mcp__habitat-database__calculate_water_change",
"mcp__habitat-database__calculate_water_chemistry",
"mcp__habitat-database__convert_units",
"mcp__habitat-database__calculate_equipment_requirements",
"mcp__habitat-database__suggest_habitat_for_tank"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as habitat-database. Review it before you use it.