{"name":"io.github.carrasquelalex1/hipocampo","slug":"carrasquelalex1-hipocampo","title":"Hipocampo MCP","description":"Bilingual dual memory with SSC for AI agents. Semantic search, embeddings, profiles.","url":"https://mcp.market/server/carrasquelalex1-hipocampo","rating":null,"grade":"C","score":57,"certified":false,"status":"active","category":"search","tags":["search"],"presence":{"score":5,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-09-27T10:05:40.121Z","last_ok_at":"2026-09-27T10:05:40.121Z","latency_ms":1048},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":null,"version":"1.0.1","remotes":[{"type":"streamable-http","url":"https://alexbell1-hipocampo-mcp.hf.space/mcp"}],"packages":[],"tools":[{"name":"add_watch_dir","description":"Agrega un directorio al watch list para auto-reindexación.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"title":"Path","type":"string"}},"required":["path"],"title":"add_watch_dirArguments"}},{"name":"compress_hipocampo","description":"\n    Compress retrieved memories using a hybrid approach (extractive + LLM).\n\n    First searches Hipocampo (SSC v1.0), then compresses the top-k results:\n    - method=\"extractive\": sentence-level keyword relevance (fast, no API cost)\n    - method=\"llm\": summarization via NVIDIA NIM (highest quality, API cost)\n    - method=\"hybrid\" (default): uses LLM for technical/code content, extractive for generic text\n\n    Use this tool BEFORE sending context to another LLM to reduce prompt size\n    while preserving critical information.\n\n    Args:\n        query: Natural language search query.\n        k: Number of memories to retrieve (default 5, max 20).\n        method: Compression method: \"hybrid\" (default), \"extractive\", or \"llm\".\n        target_token: Target token count (-1 = auto, based on content).\n        include_metadata: Include per-memory details in output.\n        budget_ratio: Scale factor for auto-estimated tokens (default 1.0).\n\n    Returns:\n        Compressed context as plain text with compression statistics.\n        Includes: compressed text, original/compressed char counts, ratio, latency.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"title":"Query","type":"string"},"k":{"default":5,"title":"K","type":"integer"},"method":{"default":"hybrid","title":"Method","type":"string"},"target_token":{"default":-1,"title":"Target Token","type":"integer"},"include_metadata":{"default":false,"title":"Include Metadata","type":"boolean"},"budget_ratio":{"default":1,"title":"Budget Ratio","type":"number"}},"required":["query"],"title":"compress_hipocampoArguments"}},{"name":"consolidate_hipocampo","description":"\n    Consolidación jerárquica: migra memorias episódicas antiguas a semánticas.\n\n    Busca recuerdos con nivel 'episodica' más antiguos que min_age_days\n    y los promueve a 'semantica', opcionalmente comprimiendo su contenido.\n\n    Args:\n        min_age_days: Edad mínima en días para consolidar (default 7).\n        dry_run: Si True, solo muestra qué se consolidaría.\n\n    Returns:\n        Reporte de la consolidación.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"min_age_days":{"default":7,"title":"Min Age Days","type":"integer"},"dry_run":{"default":true,"title":"Dry Run","type":"boolean"}},"title":"consolidate_hipocampoArguments"}},{"name":"contradicciones_hipocampo","description":"\n    Detecta contradicciones semánticas de una memoria existente.\n\n    Usa negation-probe embedding: embedea \"AFIRMACIÓN: {contenido} — ¿Esto es FALSO según: ...\"\n    y compara con el embedding original. Si la distancia de la sonda de negación\n    es MENOR que la del contenido original → señal de contradicción.\n\n    Args:\n        memory_id: ID numérico de la memoria en memoria_vectorial.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"memory_id":{"title":"Memory Id","type":"integer"}},"required":["memory_id"],"title":"contradicciones_hipocampoArguments"}},{"name":"decay_hipocampo","description":"\n    Aplica decaimiento temporal a enlaces del grafo Y memorias antiguas.\n\n    ENLACES: peso exponencial, half-life 90 días. Elimina enlaces < 0.01.\n    MEMORIAS: archiva episodica sin acceso ni protección a memoria_historica.\n\n    Protecciones (nunca se archivan):\n      - nivel = automatica o semantica\n      - metadatos.critico = true\n      - con enlaces entrantes en memory_links\n\n    Args:\n        dry_run: True (default) = solo lectura. False = ejecuta cambios.\n        min_age_days: Edad mínima en días para considerar memoria candidata.\n\n    Returns:\n        Reporte del decaimiento aplicado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"dry_run":{"default":true,"title":"Dry Run","type":"boolean"},"min_age_days":{"default":30,"title":"Min Age Days","type":"integer"}},"title":"decay_hipocampoArguments"}},{"name":"delete_hipocampo","description":"\n    Elimina un recuerdo del Hipocampo (memoria_vectorial) por su ID.\n\n    Esta operación es irreversible. Una vez eliminado, el recuerdo\n    no podrá recuperarse ni aparecerá en búsquedas futuras.\n\n    Args:\n        id: ID numérico del recuerdo a eliminar.\n\n    Returns:\n        Confirmación de eliminación.\n    ","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"title":"Id","type":"integer"}},"required":["id"],"title":"delete_hipocampoArguments"}},{"name":"graph_hipocampo","description":"\n    Explora el grafo de memoria desde un nodo raíz.\n\n    Args:\n        node_id: ID del recuerdo raíz. Si es 0, lista todos los nodos\n                 con enlaces (vista general).\n        depth: Profundidad de exploración (default 2, max 5).\n        max_nodes: Máximo de nodos a mostrar (default 50).\n\n    Returns:\n        Árbol ASCII del grafo de memoria.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"node_id":{"default":0,"title":"Node Id","type":"integer"},"depth":{"default":2,"title":"Depth","type":"integer"},"max_nodes":{"default":50,"title":"Max Nodes","type":"integer"}},"title":"graph_hipocampoArguments"}},{"name":"hipocampo_auto_repair","description":"\n    Intenta reparar automáticamente problemas detectados en el sistema.\n\n    Reparaciones posibles:\n    - Reiniciar PostgreSQL si está caído\n    - Crear tablas faltantes desde esquema.sql\n    - Verificar/configurar NVIDIA_API_KEY\n\n    Returns:\n        Reporte de reparaciones ejecutadas.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"hipocampo_auto_repairArguments"}},{"name":"hipocampo_budget","description":"\n    Gestiona el presupuesto de memoria (budget + tiering automático).\n\n    3 tiers:\n      - HOT: embedding presente (memoria_vectorial con pgvector)\n      - WARM: embedding=NULL (excluido de HNSW, sigue buscable léxicamente)\n      - COLD: contenido movido a memoria_historica (fuera de búsqueda principal)\n\n    Protecciones: automatica/semantica/critico/enlazadas → exemptas.\n\n    Args:\n        dry_run: True (default) = solo análisis. False = ejecuta tiering.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"dry_run":{"default":true,"title":"Dry Run","type":"boolean"}},"title":"hipocampo_budgetArguments"}},{"name":"hipocampo_checkpoint","description":"\n    Comprime memorias antiguas usando checkpointing logarítmico.\n\n    Con dry_run=True (default) es solo lectura — seguro, no modifica datos.\n    Con dry_run=False es destructivo: comprime memorias antiguas de forma\n    irreversible (las originales se eliminan tras comprimir). Idempotente:\n    ejecutar múltiples veces no daña datos.\n\n    Para ejecutar checkpoint como parte del ciclo completo de mantenimiento,\n    usar hipocampo_maintenance (paso 3 del ciclo). Esta herramienta es para\n    ejecución puntual o previsualización.\n\n    Recomendado ejecutar periódicamente (semanal o mensual) para mantener\n    el rendimiento del sistema.\n\n    Args:\n        dry_run: Si es True (default), solo muestra qué se comprimiría.\n                 Si es False, ejecuta la compresión (irreversible).\n\n    Returns:\n        Reporte del checkpointing ejecutado o simulado.\n        Incluye: cantidad de registros comprimidos, espacio liberado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"dry_run":{"default":true,"title":"Dry Run","type":"boolean"}},"title":"hipocampo_checkpointArguments"}},{"name":"hipocampo_dedup","description":"\n    Detecta y opcionalmente fusiona duplicados en las tablas de memoria.\n\n    Con merge=False (default) es solo lectura — seguro de ejecutar, no modifica datos.\n    Con merge=True es destructivo: consolida filas duplicadas en una sola, operación\n    irreversible. Usar con precaución. Ejecutar primero sin merge para previsualizar.\n\n    ¿Qué es un duplicado? Dos registros con alta similitud semántica (embedding\n    + texto), por encima del umbral configurable (default 0.95).\n\n    El reporte incluye: cantidad de duplicados encontrados, IDs afectados y\n    resumen de fusión si se ejecutó merge.\n\n    Para ejecutar dedup como parte del ciclo completo de mantenimiento, usar\n    hipocampo_maintenance (paso 2 del ciclo). Esta herramienta es para uso\n    puntual o previsualización antes del merge.\n\n    Args:\n        merge: Si es True, fusiona los duplicados encontrados (irreversible).\n               Si es False (default), solo muestra análisis (seguro).\n\n    Returns:\n        Reporte de duplicados encontrados o fusionados.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"merge":{"default":false,"title":"Merge","type":"boolean"}},"title":"hipocampo_dedupArguments"}},{"name":"hipocampo_health","description":"\n    Ejecuta un health check completo del sistema Hipocampo.\n\n    Verifica: PostgreSQL, NVIDIA API, tablas, espacio en disco, extensiones.\n\n    Returns:\n        Reporte formateado del estado del sistema.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"hipocampo_healthArguments"}},{"name":"hipocampo_maintenance","description":"\n    Ejecuta el ciclo completo de mantenimiento:\n    1. Health check → auto-repair si es necesario\n    2. Dedup → fusiona duplicados\n    3. Checkpoint → comprime memorias antiguas\n    4. Purge → limpia access logs antiguos (>30d)\n    5. Tune → ajusta thresholds según métricas\n\n    Nota: hipocampo_budget y decay_hipocampo se ejecutan manualmente\n    o via cron separado (son destructivos y requieren dry_run previo).\n\n    Returns:\n        Reporte consolidado del mantenimiento.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"hipocampo_maintenanceArguments"}},{"name":"hipocampo_stats","description":"\n    Muestra estadísticas de rendimiento del sistema Hipocampo.\n\n    Analiza latencia de queries, métodos usados, scores promedios\n    y da recomendaciones de optimización.\n\n    Returns:\n        Reporte de métricas y recomendaciones.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"hipocampo_statsArguments"}},{"name":"hipocampo_tune","description":"\n    Ajusta automáticamente los thresholds y pesos del SSC\n    basado en las métricas de rendimiento acumuladas.\n\n    Es destructivo: modifica los thresholds y pesos de forma irreversible.\n    Sin embargo, es idempotente: ejecutarlo múltiples veces converge al\n    mismo resultado. Usar con precaución.\n\n    Para solo ver estadísticas sin modificar nada, usar hipocampo_stats\n    (solo lectura). Para ejecutar el ciclo completo de mantenimiento\n    (que incluye tune como paso 5), usar hipocampo_maintenance.\n\n    Recomendado ejecutar solo después de acumular suficientes métricas\n    (al menos 100 consultas registradas). No usar si el sistema funciona\n    correctamente sin degradación.\n\n    Returns:\n        Reporte de ajustes aplicados (nuevos thresholds y pesos).\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"hipocampo_tuneArguments"}},{"name":"index_project","description":"\n    Indexa archivos de código fuente de un proyecto en Hipocampo (RAG).\n\n    Escanea archivos PHP, JS, TS, Python, SQL, HTML, CSS, JSON, YAML,\n    los divide en chunks significativos y los guarda como recuerdos con\n    embedding para búsqueda semántica.\n\n    La segunda corrida solo indexa archivos modificados (por mtime).\n\n    Args:\n        project_path: Ruta absoluta del proyecto a indexar.\n                      Si está vacía, usa el directorio actual.\n        force: Si True, re-indexa todo aunque no haya cambios.\n\n    Returns:\n        Estadísticas de la indexación.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_path":{"default":"","title":"Project Path","type":"string"},"force":{"default":false,"title":"Force","type":"boolean"}},"title":"index_projectArguments"}},{"name":"link_hipocampo","description":"\n    Crea un enlace entre dos recuerdos en el grafo de memoria.\n\n    Args:\n        source_id: ID del recuerdo origen (numérico: memoria_vectorial; string: memory_items).\n        target_id: ID del recuerdo destino.\n        relation_type: Tipo de relación. Valores comunes:\n                       \"related\" (default), \"follow_up\", \"part_of\",\n                       \"references\", \"similar\", \"chain\", \"validates\", \"contradicts\".\n        weight: Peso de la relación (0.0 a 1.0, default 1.0).\n\n    Returns:\n        Confirmación del enlace creado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"source_id":{"title":"Source Id","type":"integer"},"target_id":{"title":"Target Id","type":"integer"},"relation_type":{"default":"related","title":"Relation Type","type":"string"},"weight":{"default":1,"title":"Weight","type":"number"}},"required":["source_id","target_id"],"title":"link_hipocampoArguments"}},{"name":"list_watch_dirs","description":"Lista los directorios configurados para auto-reindexación.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"list_watch_dirsArguments"}},{"name":"list_watches","description":"\n    Lista todos los webhooks registrados.\n\n    Returns:\n        Lista de watches con ID, patrón y URL.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"list_watchesArguments"}},{"name":"path_hipocampo","description":"\n    Encuentra el camino más corto entre dos recuerdos en el grafo de memoria.\n\n    Args:\n        from_id: ID del recuerdo origen.\n        to_id: ID del recuerdo destino.\n        max_depth: Profundidad máxima de búsqueda (default 5, max 10).\n\n    Returns:\n        Camino encontrado como secuencia de nodos.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"from_id":{"title":"From Id","type":"integer"},"to_id":{"title":"To Id","type":"integer"},"max_depth":{"default":5,"title":"Max Depth","type":"integer"}},"required":["from_id","to_id"],"title":"path_hipocampoArguments"}},{"name":"preload_context","description":"\n    Pre-load context for a project or workspace. Extracts relevant memories\n    from the project path and returns them as a compressed summary.\n\n    Use this when starting work on a known project to restore working context.\n\n    Args:\n        project_path: Absolute path to the project or workspace.\n                      If empty, uses current working directory.\n        k: Number of relevant memories to retrieve (default 8, max 20).\n\n    Returns:\n        Compressed context summary with project-relevant memories.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_path":{"default":"","title":"Project Path","type":"string"},"k":{"default":8,"title":"K","type":"integer"}},"title":"preload_contextArguments"}},{"name":"profile_hipocampo","description":"\n    Guarda un dato de perfil personal en Hipocampo (memory_items).\n\n    A diferencia de save_hipocampo (que guarda en memoria_vectorial técnica),\n    esta herramienta guarda en memory_items, que está diseñado para datos\n    personales: gustos, familia, preferencias, datos biográficos.\n\n    Args:\n        summary: Texto corto con el dato personal. Ej: \"Al usuario le gusta el té de hierbas\".\n        extra: Información adicional en texto plano (opcional).\n        categories: Categorías (opcional). Ej: [\"personal_info\", \"gustos\"].\n\n    Returns:\n        Confirmación con el ID asignado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"summary":{"title":"Summary","type":"string"},"extra":{"default":"","title":"Extra","type":"string"},"categories":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Categories"}},"required":["summary"],"title":"profile_hipocampoArguments"}},{"name":"quick_hipocampo_search","description":"\n    Búsqueda rápida en el Hipocampo (alias corto de search_hipocampo).\n\n    Es solo lectura — no modifica datos, no tiene efectos secundarios.\n    Comportamiento y salida idénticos a search_hipocampo.\n\n    Útil cuando el cliente MCP prefiera nombres de herramienta más cortos.\n    Para nombre descriptivo, usar search_hipocampo.\n\n    Args:\n        query: Texto de búsqueda en lenguaje natural. Igual que\n               search_hipocampo. Ej: \"API REST en Python\", \"presupuesto\".\n        session_id: Opcional. Filtra resultados a una sesión específica.\n\n    Returns:\n        Mismo formato que search_hipocampo: resultados como texto plano\n        con scores de relevancia y metadatos.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"title":"Query","type":"string"},"session_id":{"default":"","title":"Session Id","type":"string"}},"required":["query"],"title":"quick_hipocampo_searchArguments"}},{"name":"reindex_now","description":"Fuerza reindexación inmediata de un directorio (o todos los watch).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"default":"","title":"Path","type":"string"}},"title":"reindex_nowArguments"}},{"name":"remove_watch_dir","description":"Elimina un directorio del watch list.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"path":{"title":"Path","type":"string"}},"required":["path"],"title":"remove_watch_dirArguments"}},{"name":"restaurar_historica","description":"\n    Restaura una memoria desde memoria_historica a memoria_vectorial.\n\n    Reconstruye embedding automáticamente. La memoria vuelve al tier HOT.\n\n    Args:\n        historica_id: ID de la memoria en memoria_historica.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"historica_id":{"title":"Historica Id","type":"integer"}},"required":["historica_id"],"title":"restaurar_historicaArguments"}},{"name":"review_automatica","description":"\n    Revisa reglas 'automatica' sin revisión en los últimos N días.\n\n    Las reglas automatica son permanentes por diseño, pero pueden degradarse\n    a 'semantica' si no han sido útiles (review_count=0) después de max_age_days.\n\n    Con dry_run=True solo lista las reglas candidatas a degradación.\n    Con dry_run=False las degrada a 'semantica' (no se borran, solo pierden\n    inmunidad de compresión).\n\n    Args:\n        max_age_days: Edad máxima sin revisión antes de considerar degradación (default 30).\n        dry_run: Si True, solo muestra qué se degradaría.\n\n    Returns:\n        Reporte de reglas encontradas.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"max_age_days":{"default":30,"title":"Max Age Days","type":"integer"},"dry_run":{"default":true,"title":"Dry Run","type":"boolean"}},"title":"review_automaticaArguments"}},{"name":"rollback_checkpoint","description":"\n    Revierte un checkpoint usando el snapshot guardado previamente.\n\n    Busca el snapshot por ID y verifica qué IDs originales fueron comprimidos.\n    Si los originales aún existen, reporta que no se necesita rollback.\n    Si fueron eliminados, intenta restaurarlos.\n\n    Args:\n        snapshot_id: ID del snapshot [CHECKPOINT SNAPSHOT] guardado.\n\n    Returns:\n        Reporte de la operación de rollback.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"snapshot_id":{"title":"Snapshot Id","type":"integer"}},"required":["snapshot_id"],"title":"rollback_checkpointArguments"}},{"name":"save_hipocampo","description":"\n    Guarda un recuerdo en el Hipocampo (memoria_vectorial).\n\n    INSERT inmediato y NO bloqueante: el embedding se genera en background\n    (_finalize_save_bg) junto con dedup semántico, auto-link y auditoría de\n    contradicciones. Hasta que el embedding se backfillea (~segundos), la\n    memoria queda en tier WARM (embedding=NULL) y es recuperable por texto.\n\n    Si ya existe un recuerdo casi idéntico (trigram), se advierte y se omite\n    el guardado a menos que force=True. El dedup semántico (>0.9) corre en\n    background y solo loguea — no bloquea.\n\n    Args:\n        content: Texto del recuerdo a guardar.\n        memory_type: Tipo de memoria. Valores comunes:\n                     \"event\" (evento/experiencia),\n                     \"decision\" (decisión tomada),\n                     \"profile\" (dato personal).\n                     Por defecto: \"event\".\n        code: Código o etiqueta corta para agrupar recuerdos (opcional).\n              Ej: \"documentacion\", \"bugfix\", \"feature\", \"setup\".\n        categories: Lista de categorías (opcional).\n                    Ej: [\"python\", \"mcp\", \"infraestructura\"].\n        session_id: Opcional. Identificador de sesión para aislar memorias.\n        force: Si True, guarda incluso si existe un recuerdo muy similar.\n        auto_link: Si True, busca recuerdos semánticamente similares (>0.75)\n                   y crea enlaces \"similar\" automáticamente.\n        nivel: Nivel de memoria jerárquica:\n               \"episodica\" (default) — detalle completo, comprimible,\n               \"semantica\" — conocimiento consolidado, protegido,\n               \"automatica\" — regla permanente, nunca se comprime.\n        critico: Si True, la memoria NUNCA se olvida ni se archiva.\n                 Protección de por vida independiente del nivel.\n\n    Returns:\n        Confirmación con el ID asignado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"content":{"title":"Content","type":"string"},"memory_type":{"default":"event","title":"Memory Type","type":"string"},"code":{"default":"","title":"Code","type":"string"},"categories":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Categories"},"session_id":{"default":"","title":"Session Id","type":"string"},"force":{"default":false,"title":"Force","type":"boolean"},"auto_link":{"default":false,"title":"Auto Link","type":"boolean"},"nivel":{"default":"episodica","title":"Nivel","type":"string"},"critico":{"default":false,"title":"Critico","type":"boolean"}},"required":["content"],"title":"save_hipocampoArguments"}},{"name":"search_code","description":"\n    Busca código fuente indexado en Hipocampo (RAG).\n\n    Similar a search_hipocampo pero filtra solo recuerdos de tipo\n    code_snippet y devuelve fragmentos de código real con\n    ubicación de archivo.\n\n    Args:\n        query: Consulta en lenguaje natural.\n        k: Número de resultados (default 5, max 20).\n        language: Filtrar por lenguaje (php, javascript, python, sql, etc.).\n                  Vacío = todos los lenguajes.\n\n    Returns:\n        Fragmentos de código relevantes con metadatos de archivo.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"title":"Query","type":"string"},"k":{"default":5,"title":"K","type":"integer"},"language":{"default":"","title":"Language","type":"string"}},"required":["query"],"title":"search_codeArguments"}},{"name":"search_hipocampo","description":"\n    Busca en el Hipocampo (memoria dual con SSC / BIRE v3.6).\n\n    Es solo lectura — no modifica datos, no tiene efectos secundarios.\n    Sin límites de tasa (rate limits).\n\n    Realiza búsqueda semántica + léxica híbrida en las bases de datos de\n    memoria del usuario, incluyendo memoria técnica (*memoria_vectorial*) y\n    de perfil (*memory_items*).\n\n    Si se proporciona session_id, filtra solo memorias de esa sesión.\n\n    Para búsquedas rápidas cuando el nombre corto sea preferido, usar\n    quick_hipocampo_search (alias idéntico). Esta herramienta es la\n    versión completa con nombre descriptivo.\n\n    Args:\n        query: Texto de búsqueda en lenguaje natural. Máximo 500 caracteres.\n               Ejemplos: \"proyecto contable\", \"perro\", \"planta medicinal\",\n               \"API REST en Python\", \"gusta del té\".\n        session_id: Opcional. Filtra resultados a una sesión específica.\n\n    Returns:\n        Resultados formateados del BIRE como texto plano.\n        Incluye: contenido encontrado, scores de relevancia, y metadatos.\n        Si no hay coincidencias, indica búsqueda exitosa pero sin resultados.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"title":"Query","type":"string"},"session_id":{"default":"","title":"Session Id","type":"string"}},"required":["query"],"title":"search_hipocampoArguments"}},{"name":"set_nivel_hipocampo","description":"\n    Cambia el nivel jerárquico de un recuerdo.\n\n    Niveles:\n      - \"episodica\" — detalle completo, comprimible por checkpoint\n      - \"semantica\" — conocimiento consolidado, protegido de compresión\n      - \"automatica\" — regla permanente, nunca se comprime/checkpointea\n\n    Args:\n        id: ID del recuerdo.\n        nivel: Nuevo nivel: \"episodica\", \"semantica\", o \"automatica\".\n\n    Returns:\n        Confirmación del cambio.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"title":"Id","type":"integer"},"nivel":{"title":"Nivel","type":"string"}},"required":["id","nivel"],"title":"set_nivel_hipocampoArguments"}},{"name":"unlink_hipocampo","description":"\n    Elimina un enlace del grafo de memoria.\n\n    Args:\n        id: ID del enlace a eliminar (si se conoce).\n        source_id: Si no se provee id, elimina por source+target+type.\n        target_id: ID destino (requerido si no hay id).\n        relation_type: Tipo de relación (opcional si no hay id).\n\n    Returns:\n        Confirmación de eliminación.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"default":0,"title":"Id","type":"integer"},"source_id":{"default":0,"title":"Source Id","type":"integer"},"target_id":{"default":0,"title":"Target Id","type":"integer"},"relation_type":{"default":"","title":"Relation Type","type":"string"}},"title":"unlink_hipocampoArguments"}},{"name":"unwatch_hipocampo","description":"\n    Elimina un webhook registrado por su ID.\n\n    Args:\n        id: ID del watch a eliminar.\n\n    Returns:\n        Confirmación de eliminación.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"title":"Id","type":"integer"}},"required":["id"],"title":"unwatch_hipocampoArguments"}},{"name":"update_hipocampo","description":"\n    Actualiza un recuerdo existente en el Hipocampo (memoria_vectorial).\n\n    Si se proporciona content, se regenera el embedding automáticamente.\n    Los campos no proporcionados no se modifican.\n\n    Args:\n        id: ID numérico del recuerdo a actualizar.\n        content: Nuevo texto del recuerdo (opcional). Si se provee, se regenera el embedding.\n        memory_type: Nuevo tipo de memoria (opcional). Ej: \"event\", \"decision\".\n        code: Código o etiqueta corta (opcional).\n        categories: Nueva lista de categorías (opcional).\n\n    Returns:\n        Confirmación de la actualización.\n    ","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"id":{"title":"Id","type":"integer"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Content"},"memory_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Memory Type"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Code"},"categories":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Categories"}},"required":["id"],"title":"update_hipocampoArguments"}},{"name":"validate_immune_rule","description":"\n    Valida una regla inmunológica (Nivel 4).\n\n    Analiza una regla 'automatica' marcada como REGLA INMUNOLÓGICA:\n    1. Verifica snapshots pre-cambio vinculados en memory_links\n    2. Detecta reglas contradictorias sobre el mismo archivo/proyecto\n    3. Reporta reglas huérfanas (>30d sin enlaces entrantes)\n\n    Args:\n        rule_id: ID de la regla inmunológica a validar.\n\n    Returns:\n        Reporte de validación con recomendaciones.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"rule_id":{"title":"Rule Id","type":"integer"}},"required":["rule_id"],"title":"validate_immune_ruleArguments"}},{"name":"watch_hipocampo","description":"\n    Registra un webhook que se dispara cuando se crea/modifica/elimina\n    un recuerdo cuyo contenido o metadatos contengan el patrón dado.\n\n    Args:\n        pattern: Texto a buscar en contenido o metadatos del recuerdo.\n        webhook_url: URL que recibirá un POST con event, id, content, metadatos.\n\n    Returns:\n        Confirmación con ID del watch creado.\n    ","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"pattern":{"title":"Pattern","type":"string"},"webhook_url":{"title":"Webhook Url","type":"string"}},"required":["pattern","webhook_url"],"title":"watch_hipocampoArguments"}}],"scan":{"score":57,"grade":"C","scanned_at":"2026-09-24T12:00:42.520Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T12:00:42.463Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 192ms"]},"poisoning":{"score":15,"max":15,"notes":["37 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 3 write-action tools with no auth"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"},{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://alexbell1-hipocampo-mcp.hf.space/mcp","reachable":true,"authRequired":false,"latencyMs":192,"serverInfo":{"name":"hipocampo","version":"1.29.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":null,"source":"none"},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":5}}}},"grade_history":[],"reviews":[]}