{"name":"io.github.SynapseLayer/synapse-layer","slug":"synapselayer-synapse-layer","title":"Synapse Layer — Trust Infrastructure for AI Agents","description":"MCP-native Trust Infrastructure for AI Agents. Persistent encrypted memory with Trust Quotient.","url":"https://mcp.market/server/synapselayer-synapse-layer","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":34,"stars":13,"forks":4,"downloads_week":null,"last_push_at":"2026-09-18T13:46:59.000Z","license":"Apache-2.0"},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/SynapseLayer/synapse-layer","website":"https://synapselayer.org","version":"2.4.6","remotes":[{"type":"streamable-http","url":"https://forge.synapselayer.org/api/mcp","headers":[{"description":"Connect token for API authentication (sk_connect_*). Obtain via Forge → Dashboard → Connect.","isSecret":true,"name":"x-connect-token"}]}],"packages":[],"tools":[{"name":"health_check","description":"Check service availability, engine version, and storage health. Public method.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"initialize_context","description":"Initialize a persistent memory context for a conversation or agent session. Returns REDACTED metadata by default (detail=\"summary\"). Use detail=\"full\" with a reason (10–200 chars) to retrieve plaintext content under MEMORY_EXPORT_GOVERNANCE_V1.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"detail":{"type":"string","enum":["summary","full"],"description":"Detail level. \"summary\" (default) = redacted metadata only, no plaintext. \"full\" = plaintext content; REQUIRES the reason parameter and is audit-logged."},"reason":{"type":"string","description":"REQUIRED only when detail=\"full\" (10–200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT context. Without it, detail=\"full\" WILL fail with code -32602."}},"required":[]}},{"name":"list_memories","description":"List memory metadata with pagination and governance limits.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"scope":{"type":"string","enum":["agent","tenant"],"description":"Explicit memory scope. \"agent\" (default, fail-closed) = lists memories for the given agent_id (or the token agent). \"tenant\" = lists memories across all agents of the authenticated tenant."},"agent_id":{"type":"string","description":"Agent identifier (canonical or alias). Used only when scope=\"agent\" or scope is inferred."},"limit":{"type":"number","description":"Maximum memory metadata rows to return. Hard-capped: default 5, max 10. Values above 10 are silently reduced to 10."},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}}}},{"name":"memory_feedback","description":"Submit feedback to adjust trust scoring for stored memories.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"memory_id":{"type":"string","description":"ID of the memory to provide feedback on (canonical snake_case name)."},"memoryId":{"type":"string","description":"Deprecated camelCase alias of memory_id — still accepted for backward compatibility."},"signal":{"type":"string","enum":["used","ignored","helpful","irrelevant"],"description":"Feedback signal: used (auto), helpful (positive), irrelevant (negative), ignored."},"session_id":{"type":"string","description":"Optional session identifier for tracking (canonical snake_case name)."},"sessionId":{"type":"string","description":"Deprecated camelCase alias of session_id — still accepted for backward compatibility."}},"required":["signal"]}},{"name":"neural_handover","description":"Transfer contextual state between agents with continuity controls.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"token":{"type":"string","description":"The handover token (64 hex chars). Generated by the source agent/user in Forge UI."},"reason":{"type":"string","description":"REQUIRED (10–200 chars). Human-readable justification for consuming this handover. Example: \"Receiving project context from Claude session.\""},"consuming_agent":{"type":"string","description":"Agent identifier consuming the handover (defaults to token agent)."}},"required":["token","reason"]}},{"name":"process_text","description":"Extract candidate memories from free-form text with governance filters and sanitization.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","description":"Free-form text to scan for auto-save triggers."},"agent_id":{"type":"string","description":"Agent identifier. Defaults to \"default\"."},"project":{"type":"string","description":"Force a specific project (e.g., SYNAPSE_LAYER, OFFLY). Auto-detected if omitted."},"source":{"type":"string","description":"Source identifier (default: mcp)."}},"required":["text"]}},{"name":"recall","description":"Retrieve relevant persisted memory using semantic, temporal, priority, or hybrid routing. Governance: requires reason (10–200 chars). Rate limit: 20/min.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"What to recall — natural language query for memory retrieval."},"reason":{"type":"string","description":"REQUIRED (10–200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT memory. Without this parameter the call WILL fail with code -32602. Example: \"User asked me to summarize last week decisions.\""},"scope":{"type":"string","enum":["agent","tenant"],"description":"Explicit memory scope. \"agent\" (default, fail-closed) = limits recall to the given agent_id (or the token agent). \"tenant\" = cross-agent recall within the authenticated tenant. If omitted with agent_id present, \"agent\" is inferred; if both omitted, the token agent is used (verified-token scope)."},"agent_id":{"type":"string","description":"Agent identifier (canonical or alias). Used only when scope=\"agent\" or scope is inferred."},"limit":{"type":"number","description":"Maximum memories to return (1–50, default: 10)."},"mode":{"type":"string","enum":["auto","temporal","semantic","priority","hybrid"],"description":"Recall routing mode. \"temporal\" = pure chronological, \"semantic\" = FTS + TQ ranking, \"priority\" = critical/high-TQ first, \"hybrid\" = weighted blend, \"auto\" = detect from query (default)."},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["query","reason"]}},{"name":"recall_memory","description":"Recall persisted memory by query. Alias of recall.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"What to recall — natural language query for memory retrieval."},"reason":{"type":"string","description":"REQUIRED (10–200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Without this the call WILL fail with code -32602. Example: \"Checking user project status.\""},"scope":{"type":"string","enum":["agent","tenant"],"description":"Explicit memory scope. \"agent\" (default, fail-closed) = limits recall to the given agent_id (or the token agent). \"tenant\" = cross-agent recall within the authenticated tenant. If omitted with agent_id present, \"agent\" is inferred; if both omitted, the token agent is used (verified-token scope)."},"agent_id":{"type":"string","description":"Agent identifier (canonical or alias). Used only when scope=\"agent\" or scope is inferred."},"limit":{"type":"number","description":"Maximum memories to return (1–50, default: 10)."},"mode":{"type":"string","enum":["auto","temporal","semantic","priority","hybrid"],"description":"Recall routing mode."},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["query","reason"]}},{"name":"save_memory","description":"Save a memory entry to the persistent store. Alias of save_to_synapse.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"content":{"type":"string","description":"The memory content to store securely."},"agent_id":{"type":"string","description":"Agent identifier for memory isolation."},"tags":{"type":"array","items":{"type":"string"},"description":"Tags for categorization."},"force_intent":{"type":"string","description":"MANUAL OVERRIDE ONLY — use apenas quando você (humano) quer forçar explicitamente a classificação de intenção. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se não tiver certeza, NÃO preencha este campo — o sistema classifica automaticamente. Valores não reconhecidos são ignorados silenciosamente e retornados em warnings."},"intent_reason":{"type":"string","description":"Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent.","maxLength":500},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["content"]}},{"name":"save_to_synapse","description":"Persist memory with encryption at rest, sanitization, and deduplication controls.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"content":{"type":"string","description":"The memory content to store securely."},"agent_id":{"type":"string","description":"Agent identifier for memory isolation. Defaults to \"default\"."},"project":{"type":"string","description":"Project identifier (e.g., SYNAPSE_LAYER)."},"type":{"type":"string","description":"Event type: [MILESTONE], [DECISION], [ALERT], [AUTO-STRAT], [AUTO-OP], [AUTO-INSIGHT], [AUTO-DECISION], [AUTO-CONTEXT], [MANUAL]."},"importance":{"type":"number","description":"Accepted for compatibility; not enforced by the API."},"tags":{"type":"array","items":{"type":"string"},"description":"Tags for categorization."},"force_intent":{"type":"string","description":"MANUAL OVERRIDE ONLY — use apenas quando você (humano) quer forçar explicitamente a classificação de intenção. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se não tiver certeza, NÃO preencha este campo — o sistema classifica automaticamente. Valores não reconhecidos são ignorados silenciosamente e retornados em warnings."},"intent_reason":{"type":"string","description":"Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent.","maxLength":500},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["content"]}},{"name":"search","description":"Search persisted memory across agent scopes using full-text matching. Governance: requires reason (10–200 chars) because results contain plaintext content.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","description":"Search query — natural language or keywords."},"reason":{"type":"string","description":"REQUIRED (10–200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT memory. Without this parameter the call WILL fail with code -32602. Example: \"Checking prior migration decisions for the user.\""},"scope":{"type":"string","enum":["agent","tenant"],"description":"Explicit search scope. \"agent\" (default, fail-closed) = limits search to the given agent_id (or the token agent). \"tenant\" = cross-agent search within the authenticated tenant. If omitted with agent_id present, \"agent\" is inferred; if both omitted, the token agent is used (verified-token scope)."},"agent_id":{"type":"string","description":"Agent identifier (canonical or alias). Used only when scope=\"agent\" or scope is inferred."},"limit":{"type":"number","description":"Maximum results to return (1–50, default: 20)."},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["query","reason"]}},{"name":"slo_report","description":"Return uptime and SLO metrics for the MCP service.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"admin_token":{"type":"string","description":"Admin authentication token. Must match ADMIN_TOKEN environment variable."},"window_hours":{"type":"array","items":{"type":"number"},"description":"Time windows in hours for the report. Default: [24, 168] (24h + 7d)."}},"required":["admin_token"]}},{"name":"store_memory","description":"Store structured memory with metadata and trust scoring.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"content":{"type":"string","description":"The memory content to store securely."},"agent_id":{"type":"string","description":"Agent identifier for memory isolation. Defaults to \"default\"."},"tags":{"type":"array","items":{"type":"string"},"description":"Tags for categorization."},"force_intent":{"type":"string","description":"MANUAL OVERRIDE ONLY — use apenas quando você (humano) quer forçar explicitamente a classificação de intenção. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se não tiver certeza, NÃO preencha este campo — o sistema classifica automaticamente. Valores não reconhecidos são ignorados silenciosamente e retornados em warnings."},"intent_reason":{"type":"string","description":"Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent.","maxLength":500},"subject":{"type":"string","description":"ESCOPO1 (optional): opaque 8-128 char token ([A-Za-z0-9._:-]) that isolates memory to a single person within a shared connect-token. Omit for token-scoped behavior. Never include PII/email."}},"required":["content"]}}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-19T10:14:52.622Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T10:14:52.576Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1126ms"]},"poisoning":{"score":15,"max":15,"notes":["13 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"probes":[{"url":"https://forge.synapselayer.org/api/mcp","reachable":true,"authRequired":false,"latencyMs":1126,"serverInfo":{"name":"synapse-layer","version":"2.4.6"}}],"packages":[],"repo":{"found":true,"owner":"SynapseLayer","repo":"synapse-layer","archived":false,"pushedAt":"2026-09-18T13:46:59Z","stars":13,"forks":4,"openIssues":3,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/271413158?v=4","ownerCreatedAt":"2026-03-27T02:59:06Z","license":"Apache-2.0"},"icon":{"url":"https://synapselayer.org/icon-192.png","source":"site","width":192,"height":192},"presence":{"stars":13,"forks":4,"downloadsWeek":null,"license":"Apache-2.0","lastPushAt":"2026-09-18T13:46:59.000Z","score":34}}}},"grade_history":[],"reviews":[]}