{"name":"PlatformPilot Brain","version":"0.1.0","kind":"product","description":"Organizational memory for a company: search and recall memories, save reusable learnings, report outcomes, and explain how entities (people, projects, vendors, systems) relate.","icon":"https://platformpilot.ai/favicon-64.png?v=5","url":"https://mcp.platformpilot.ai/brain/mcp","serverUrl":"https://mcp.platformpilot.ai/brain/mcp","transport":"streamable-http","auth":{"type":"oauth2","protectedResourceMetadata":"https://mcp.platformpilot.ai/brain/.well-known/oauth-protected-resource","authorizationServerMetadata":"https://mcp.platformpilot.ai/brain/.well-known/oauth-authorization-server","registrationEndpoint":"https://mcp.platformpilot.ai/brain/oauth/register"},"capabilities":{"tools":{"listChanged":false}},"toolsListing":"public","tools":[{"name":"search_memories","description":"Semantic search over one namespace of the Brain's memories: 'episodes' (records of past situations and how they were resolved) or 'knowledge' (reusable learnings: patterns, facts, procedures). Returns the best matches, each with a relevance score, plus related memories attached to those matches (related=true rows carry no score because they were not scored against the query). Every row includes an advisory field: a plain-language warning when the memory has recently failed in use, otherwise null.","annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false}},{"name":"manage_memories","description":"Create, update, or delete one memory in the Brain, your organization's shared memory across agents, people, and conversations. A stored memory is readable by every agent and person connected to the organization.\naction 'create' requires namespace and content and returns the new memory id; 'update' requires id and content and replaces that memory's content; 'delete' requires id and removes the memory.\nNamespaces:\n- episodes: a record of a past event: what happened, how it was investigated, the root cause, and the resolution (including workarounds).\n- knowledge: a reusable learning: a pattern, fact, or procedure.\nnamespace is required for create; for update and delete the memory id alone is enough.","annotations":{"readOnlyHint":false,"openWorldHint":false,"destructiveHint":true}},{"name":"recall_context","description":"Compose Brain context in one call from any subset of three inputs: a topic search, an entity lookup, and specific memory keys, with the expansions selected per input. Returns one rendered text bundle within the requested token budget; bodies clipped to fit name their memory keys.","annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false}},{"name":"fetch_memories","description":"Read up to 10 memories by exact key in one call, or resolve one Brain card id: a finding id (fnd_...) returns the two memories the Brain marked as contradicting each other; a question id (gq_...) returns the question and what is currently recorded behind it. Read-only; each row includes the same advisory field as search results.","annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false}},{"name":"feedback_memories","description":"Record whether work that relied on the listed memories succeeded ('worked') or failed ('failed'), with an optional short reason. The Brain uses outcome reports to rank memories in later reads and to attach a warning to memories that keep failing. Keys are recorded in the order given, most influential first, up to 10. A report whose run_id was already recorded is accepted without being recorded again.","annotations":{"readOnlyHint":false,"openWorldHint":false,"destructiveHint":false}}],"homepage":"https://mcp.platformpilot.ai/","documentation":"https://mcp.platformpilot.ai/llms.txt","instructions":"Typical flow: recall_context composes context in one call (topic search plus specific keys together); search_memories finds one kind of memory by topic (namespace 'episodes' for past events, 'knowledge' for reusable learnings); fetch_memories reads specific memories when you already have their keys. Search before you re-derive: a similar situation has often been handled before, and if a first query returns nothing, rephrase it before giving up. A row whose advisory is not null warns that the memory failed recently. Write reusable learning back with manage_memories: one idea per memory, self-contained (name the system and the concept, never 'this issue'), and distilled (the lesson and its cause, not the raw log); if a search already surfaced a memory you would refine, update it instead of creating a near-duplicate. After acting on recalled memories, report the result with feedback_memories.","useWhen":"the user asks what the company knows, learned, or decided; wants to save a learning or an outcome; or asks how two entities connect or what an entity affects."}