Repository navigation
Schema set: People & organization #67
CheMiguel23
started this conversation in
Schemas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Track the people around you at work: who they are, which team they're on, who they report to, what they're responsible for, which projects they work on, and who went where and when. Birthdays included.
What you can say to Claude
Tools you get
Each schema creates three tools:
add_…,update_…anddelete_….add_eventname,dateheld_at, participants →attended_by, project →aboutadd_personnamereports_to, memberOf →member_of, basedIn →based_inadd_placenamepart_ofadd_projectnameowned_by, teams →assigned_to, contributors →involvesadd_teamnameled_by, partOf →part_ofSetup
Create a folder for this set, for example
org-schemas, anywhere on your computer.Save each file below into that folder, keeping the file names.
Point MemoryMesh at the folder with the
MEMORYMESH_SCHEMAS_DIRenvironment variable in your Claude Desktop config:On macOS use normal paths, e.g.
"/Users/you/org-schemas". SettingMEMORYMESH_MEMORY_FILEtoo is optional; it keeps this set's data separate from your other memories.Fully quit and restart Claude Desktop.
Using your own folder keeps these schemas safe from updates and keeps the built-in examples out of your tool list. (You can also drop the files into
dist/data/schemasinstead.)Tips
name(and occasionally one more field) is required, so Claude doesn't have to invent values it doesn't know.The 5 schema files
event.schema.json{ "name": "add_event", "description": "Add an event (meeting, trip, conference...) to the knowledge graph, to record who went where and when", "properties": { "name": { "type": "string", "description": "A short unique title, e.g. 'Berlin offsite 2026-05'", "required": true }, "date": { "type": "string", "description": "When it happened or will happen", "required": true }, "type": { "type": "string", "description": "Kind of event", "enum": [ "meeting", "trip", "conference", "workshop", "other" ] }, "summary": { "type": "string", "description": "What happened or what it is for" }, "location": { "type": "string", "description": "Where the event takes place", "relationship": { "edgeType": "held_at", "description": "Where the event takes place (must already exist)" } }, "participants": { "type": "array", "description": "People who attended", "relationship": { "edgeType": "attended_by", "description": "People who attended (must already exist)" } }, "project": { "type": "string", "description": "Project the event relates to", "relationship": { "edgeType": "about", "description": "Project the event relates to (must already exist)" } } }, "additionalProperties": true }person.schema.json{ "name": "add_person", "description": "Add a person (colleague, employee, team member) to the knowledge graph", "properties": { "name": { "type": "string", "description": "The person's full name", "required": true }, "role": { "type": "string", "description": "Job title or role, e.g. 'Engineering manager'" }, "email": { "type": "string", "description": "Email address" }, "birthday": { "type": "string", "description": "Birthday, e.g. '1990-04-23' or 'April 23'" }, "responsibilities": { "type": "array", "description": "What this person is responsible for" }, "skills": { "type": "array", "description": "Skills or areas of expertise" }, "reportsTo": { "type": "string", "description": "This person's manager", "relationship": { "edgeType": "reports_to", "description": "This person's manager (must already exist)" } }, "memberOf": { "type": "array", "description": "Teams this person belongs to", "relationship": { "edgeType": "member_of", "description": "Teams this person belongs to (must already exist)" } }, "basedIn": { "type": "string", "description": "Office or place where this person usually works", "relationship": { "edgeType": "based_in", "description": "Office or place where this person usually works (must already exist)" } }, "notes": { "type": "string", "description": "Anything else worth remembering" } }, "additionalProperties": true }place.schema.json{ "name": "add_place", "description": "Add a place (office, city, client site...) to the knowledge graph", "properties": { "name": { "type": "string", "description": "The place's name", "required": true }, "type": { "type": "string", "description": "Kind of place, e.g. office, city, client site" }, "address": { "type": "string", "description": "Address or general location" }, "partOf": { "type": "string", "description": "The larger place this one is inside of, e.g. the city of an office", "relationship": { "edgeType": "part_of", "description": "The larger place this one is inside of, e.g. the city of an office (must already exist)" } } }, "additionalProperties": true }project.schema.json{ "name": "add_project", "description": "Add a project to the knowledge graph", "properties": { "name": { "type": "string", "description": "The project's name", "required": true }, "description": { "type": "string", "description": "What the project is about" }, "status": { "type": "string", "description": "Current status", "enum": [ "planned", "active", "on hold", "done", "cancelled" ] }, "deadline": { "type": "string", "description": "Deadline or target date" }, "owner": { "type": "string", "description": "The person responsible for the project", "relationship": { "edgeType": "owned_by", "description": "The person responsible for the project (must already exist)" } }, "teams": { "type": "array", "description": "Teams working on the project", "relationship": { "edgeType": "assigned_to", "description": "Teams working on the project (must already exist)" } }, "contributors": { "type": "array", "description": "People contributing to the project", "relationship": { "edgeType": "involves", "description": "People contributing to the project (must already exist)" } } }, "additionalProperties": true }team.schema.json{ "name": "add_team", "description": "Add a team or department to the knowledge graph", "properties": { "name": { "type": "string", "description": "The team's name", "required": true }, "description": { "type": "string", "description": "What the team does" }, "lead": { "type": "string", "description": "The person who leads the team", "relationship": { "edgeType": "led_by", "description": "The person who leads the team (must already exist)" } }, "partOf": { "type": "string", "description": "The larger team or department this team belongs to", "relationship": { "edgeType": "part_of", "description": "The larger team or department this team belongs to (must already exist)" } } }, "additionalProperties": true }All reactions