citetrail
Citetrail
Memoria local respaldada por la procedencia de lo que vio tu navegador: cada recuperación incluye la URL, el título y la marca de tiempo de la que proviene.
Citetrail captura las páginas que realmente leíste, las mantiene en tu máquina y las hace consultables — para ti y para tus agentes de IA a través de MCP. Cuando un agente utiliza algo que ha encontrado allí, puede citar exactamente de dónde procede.
Estado: pre-release. Consulta el Estado del proyecto antes de instalarlo.
Licencia: Apache-2.0
Local por defecto. Sin cuenta, sin servidor, sin carga de archivos. Las páginas bloqueadas fallan en modo cerrado.
El problema que resuelve Citetrail
Lees seis pestañas, las cierras y ahora tu agente de desarrollo necesita lo que estaba en la pestaña cuatro. Tus opciones hoy son: pegarlo de nuevo, dejar que el agente vuelva a buscar en la web abierta y esperar que aterrice en la misma página, o aceptar una respuesta sin fuente.
El historial del navegador sabe que visitó una URL. No sabe lo que decía la página y no puede comunicárselo a tu agente. Citetrail cierra esa brecha:
Historial del navegador | Citetrail |
Una lista de URLs | El contenido que realmente leíste, capturado |
Búsqueda aproximada por título | Búsqueda por lo que decía la página |
Invisible para tus herramientas | Consultable por agentes a través de MCP |
Sin noción de «por qué está aquí» | Cada entrada lleva su procedencia |
Todo, de forma indiscriminada | Solo páginas permitidas; la lista de bloqueo falla en modo cerrado |
Related MCP server: qsearch
Lo que «respaldado por la procedencia» significa aquí
Cada fragmento almacenado guarda una referencia acotada: URL de origen, título de la página, marca de tiempo de captura y la posición dentro de la página. La recuperación devuelve el fragmento y esa referencia juntos; no pueden separarse. Un agente que responde desde Citetrail siempre puede decir de dónde lo ha sacado, y siempre puedes abrir el original.
Si la fuente ha desaparecido, Citetrail dice que la fuente ha desaparecido. No sirve silenciosamente un fragmento como si siguiera activa.
Inicio rápido
git clone https://github.com/anonb3ll/citetrail
cd citetrail
python3 -m venv .venv
.venv/bin/pip install -e .
.venv/bin/citetrail init
# 2. Search the local store
.venv/bin/citetrail search "retry backoff"
# Optional: block a sensitive hostname before it can be stored
.venv/bin/citetrail block bank.example.test
# 3. Point an agent at the same local store over MCP
.venv/bin/citetrail mcp --stdioEl almacén por defecto es ~/.local/share/citetrail. Establece la variable CITETRAIL_STORE o pasa --store PATH para usar un directorio local diferente. Consulta docs/extension.md para cargar el adaptador no empaquetado de Chromium.
Documentación
Guía | Descripción |
Índice de la documentación | |
Comandos de la CLI y estructura del almacén | |
Esquema de las herramientas MCP y su registro | |
Configuración de la extensión de Chromium | |
Lista de bloqueo y comportamiento de cierre ante fallos | |
Integración opcional con Runroom |
Preguntas frecuentes
¿Cómo permito que mi agente de IA busque en mi historial de navegación?
Ejecuta el servidor MCP local y regístralo con tu agente. El agente consulta a Citetrail como cualquier otra herramienta MCP y recibe fragmentos con sus fuentes adjuntas. Nunca tiene acceso directo a tu navegador ni a tu perfil.
¿Dónde se almacenan mis datos y se sube algo?
En tu máquina, en una base de datos local que puedes eliminar cuando quieras. Citetrail no tiene servidor y no realiza ninguna subida. Consulta docs/privacy.md.
¿Cómo evito que capture mi banco, mi correo o mi intranet laboral?
Con la lista de bloqueo. Esta se consulta antes de cualquier captura, y falla en modo cerrado: si no se pueden evaluar las reglas para esa página, la página no se captura. Añade un dominio con citetrail block bank.example.test. La captura solo con allowlist queda aplazada para más adelante.
¿Puede un agente citar una fuente que no ha leído?
No en Citetrail. La referencia viaja junto con el fragmento; no hay ninguna API que devuelvan texto sin su procedencia.
¿Qué pasa si estoy sin conexión o si una página ha desaparecido?
La recuperación funciona sin conexión sobre lo que ya has capturado. Si la URL original no está accesible, los resultado se marcan como tales en lugar de presentarse silenciosamente como actuales. Los estados no disponibles y no bloqueados por abreviado se informan honesta, no se ocultan.
¿Es una aplicación para tomar notas o un segundo cerebro?
No. Citetrail captura y recupera; no organiza tu pensamiento, no construye un grafo de conocimiento ni te pide que mantengas nada. Es una canalización de conocimientos para herramientas que necesitan saber qué has leído.
¿Funciona en cualquier navegador?
La extensión se dirige en primer lugar a los navegadores basados en Chromium. El puente local entre la extensión y el proceso local del servicio tiene sus limitaciones prácticas; la o consulta docs/limitations.md.
Lo que Citetrail no es
No es un servicio en la nube ni un servicio de sincronización. Un solo ordenador, un solo almacén.
No es un sistema de notas ni de gestión del conocimiento personal.
No se aplica a la clínica, ni al bienestar, ni a la monitorización de la atención. No hace ninguna afirmación sobre tu cognición.
No es un programaque rastree de la web. Captura páginas que tú mismo has visitado, bajo tus propias condiciones.
No es una aplicación móvil.
Para más: docs/limitations.md y docs/private-exclusions.md.
Proyecto en relación
Runroom coordina el traspaso entre agentes de IA y humanos con etapas de revisión y un registro de auditoría. Los dos proyectos son independientes y ningún exige al otro; una integración opcional muestra cómo una referencia de Citetrail alimenta una tarea de Runroom gobernada.
Contribuciones
Consulta CONTRIBUTING.md y CODE_OF_CONDUCT.md. Reportar vulnerabilidades de forma privada y segura: los detalles en SECURITY.md.
Estado del proyecto
Pre-release, pre-1.0. Aún deberán cambiar. Citetrail has publicado para ver si otras personas necesitan esto. Si lo pruebas, cuéntanos qué querías recordar y si lo recordaste.
Licencia
Licencia Apache 2.0. Copyright 2026 The Citetrail Contributors.
Available Tools
1 toolcitetrail_searchC
Search local captures with inseparable provenance.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| source_state | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. 'Search' implies a read-only operation, but the description does not clarify what 'inseparable provenance' means, how results are returned, whether source_state affects behavior, or what happens when captures are unavailable or privacy-blocked. This is a minimal signal rather than transparent behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no filler or repetition. The core action and resource are front-loaded. It is appropriately concise, though the cryptic 'inseparable provenance' could have been replaced with more useful information without harming length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with only two parameters, but there is no output schema, no annotations, and no parameter-level documentation. The description leaves critical details undefined: what 'local captures' are, what 'inseparable provenance' means, how query matching works, and what the response shape is. This is not enough for an agent to reliably invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no information about either parameter. 'query' and 'source_state' are completely undocumented, and the meaning of the source_state enum values is left entirely to inference. The description fails to compensate for the schema's lack of parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a search operation over 'local captures,' which identifies the tool's verb and resource. The phrase 'with inseparable provenance' adds a distinguishing quality, though it is jargon-heavy and not fully explained. With no sibling tools to differentiate from, this is clear enough for basic selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when searching local captures, giving some usage context. However, it provides no explicit guidance on when to prefer this tool over alternatives, no prerequisites, and no exclusions. The usage signal is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.1.0- First observed
citetrail_search
TDQS
Scored across 1 tool
With only one tool, there is no possibility of confusion or overlap. The purpose of citetrail_search is singular and unambiguous.
The single tool name 'citetrail_search' follows a clear object-action pattern, and with only one tool there is no inconsistency to evaluate.
A single search tool feels insufficient for a server named 'citetrail', which implies a broader capture management lifecycle. One tool is too thin for the apparent scope of the domain.
The server only exposes search; there are no create, retrieve, update, delete, or list operations for captures. This leaves agents unable to ingest or manage captures, creating significant gaps and dead ends.
Maintenance
Related MCP Connectors
Scrape, crawl and search the web for AI agents via MCP.
- KogniteOAuthdev.kognite
Hosted agent memory: store, search, and recall facts across sessions from any MCP client.
Agentic search over your Dewey document collections from any MCP-compatible client.
Personal knowledge MCP: capture bookmarks, notes & todos by chat; archive pages; search memory.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI tools to query a user's private, locally stored memories (notes, documents) with source citations, using the MCP protocol.12 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web searches with full content retrieval and multi-engine provenance, including trust scoring and local corpus persistence, via MCP integration.1 npm2Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables LLM agents to perform web search, scraping, and summarization outside their context window, receiving compact cited briefs via MCP while full pages are cached and viewable in a local web UI.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web research over MCP: search with a real browser, fetch JS-rendered pages, download PDFs and convert them to Markdown, then search and page through large documents using bounded previews so the context window isn't flooded.BSD Zero Clause