sharingu

Tools and routes

Everything this door offers: each tool with its title, whether it reads or writes, who may call it, whether it reads a project you name, and how it fails; each route with who may call it.

Connect

One MCP address

Every organization is reached at the same address. Add it to your AI client as a remote MCP server; the client opens sharingu's sign-in (OAuth) and you sign in with your email and passphrase. No header and no key go in the client's configuration.

https://agent.sharingu.xyz/mcp

35 tools (18 read, 17 write) and 87 routes, listed below from the door's own inventory.

MCP tools

35 tools

Each tool carries its title and the four MCP annotations. A tool that reads a project takes the project you name, checked against your seats on every call.

ToolTitleKindWho may call itReads a named projectAnnotationsHow it fails
askAsk the ownerwriteanyone signed in, with a key or grant that may writenonot destructive · closed worldnot-authenticated, not-allowed
briefBriefreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
broadcastBroadcastreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
buildBuildreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
changesWhat changedreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
create_projectCreate a projectwritethe owner, with a key or grant that may writenodestructive · idempotent · closed worldnot-authenticated, not-allowed
decide_contributionDecide a contributionwritethe owner, with a key or grant that may writenodestructive · idempotent · closed worldnot-authenticated, not-allowed
decisionsDecisionsreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
equipEquip from Broadcastwriteanyone signed in, with a key or grant that may writenodestructive · idempotent · closed worldnot-authenticated, not-allowed
fileFilewriteanyone signed in, with a key or grant that may writenodestructive · idempotent · closed worldnot-authenticated, not-allowed
formatsFormatsreadanyone signed innoread-only · idempotent · closed worldnot-authenticated
goalsGoalsreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
gtmGTMreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
homeHomereadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
impactImpactreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
mapMapreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
missingWhat is missingreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
open_itemsOpen itemswriteanyone signed in, with a key or grant that may writenodestructive · closed worldnot-authenticated, not-allowed
pick_upPick upwriteanyone signed in, with a key or grant that may writenodestructive · idempotent · closed worldnot-authenticated, not-allowed
previewPreview a filingwriteanyone signed inyesnot destructive · closed worldnot-authenticated, not-allowed
publishPublish to Broadcastwriteanyone signed in, with a key or grant that may writenonot destructive · idempotent · closed worldnot-authenticated, not-allowed
publish_versionPublish a versionwritethe owner, with a key or grant that may writeyesnot destructive · closed worldnot-authenticated, not-allowed
readReadreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
read_fileRead a filereadanyone signed innoread-only · idempotent · closed worldnot-authenticated
regradeRegrade from the pageswriteanyone signed in, with a key or grant that may writeyesnot destructive · closed worldnot-authenticated, not-allowed
respondAnswer a questionwriteanyone signed in, with a key or grant that may writeyesdestructive · closed worldnot-authenticated, not-allowed
restore_versionRestore a versionwritethe owner, with a key or grant that may writeyesdestructive · idempotent · closed worldnot-authenticated, not-allowed
rule_questionRule a questionwritethe owner, with a key or grant that may writeyesdestructive · closed worldnot-authenticated, not-allowed
save_fileSave a filewriteanyone signed in, with a key or grant that may writenonot destructive · closed worldnot-authenticated, not-allowed
submit_gradeGrade a checkwriteanyone signed in, with a key or grant that may writeyesnot destructive · closed worldnot-authenticated, not-allowed
updatesWhat changed for youreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
versionsVersionsreadanyone signed inyesread-only · idempotent · closed worldnot-authenticated, not-allowed
whoamiWho am Ireadanyone signed innoread-only · idempotent · closed worldnot-authenticated
wrap_upWrap up a sessionwriteanyone signed in, with a key or grant that may writenonot destructive · open worldnot-authenticated, not-allowed
REST routes

87 routes

The same door over HTTP, each route with who may call it.

RouteKindWho may call itHow it fails
POST /artifactwriteanyone signed in (a key or a session)not-authenticated
GET /artifact/:idreadanyone signed in (a key or a session)not-authenticated
GET /artifactsreadanyone signed in (a key or a session)not-authenticated
POST /askwriteanyone signed in (a key or a session)not-authenticated
GET /auditreadanyone signed in (a key or a session)not-authenticated
POST /backfillwritethe ownernot-authenticated, not-allowed
POST /backup-dumpwritethe ownernot-authenticated, not-allowed
GET /briefreadanyone signed in (a key or a session)not-authenticated
GET /broadcastreadanyone signed in (a key or a session)not-authenticated
POST /broadcast/equipwriteanyone signed in (a key or a session)not-authenticated
GET /broadcast/livereadanyone signed in (a key or a session)not-authenticated
POST /broadcast/publishwriteanyone signed in (a key or a session)not-authenticated
GET /broadcast/starter/:slugreadanyone signed in (a key or a session)not-authenticated
GET /buildreadanyone signed in (a key or a session)not-authenticated
GET /canvas.jsonreadanyone signed in (a key or a session)not-authenticated
GET /capabilitiesreadanyone signed in (a key or a session)not-authenticated
GET /changesreadanyone signed in (a key or a session)not-authenticated
GET /contractreadanyone signed in (a key or a session)not-authenticated
GET /contribution/:idreadanyone signed in (a key or a session)not-authenticated
POST /contribution/:id/decidewritethe ownernot-authenticated, not-allowed
GET /contribution/:id/impactreadanyone signed in (a key or a session)not-authenticated
POST /contribution/:id/pick-upwriteanyone signed in (a key or a session)not-authenticated
GET /controlreadanyone signed in (a key or a session)not-authenticated
POST /controlwritethe ownernot-authenticated, not-allowed
GET /control/measuresreadthe ownernot-authenticated, not-allowed
GET /control/peoplereadanyone signed in (a key or a session)not-authenticated
GET /decisionsreadanyone signed in (a key or a session)not-authenticated
GET /doc/:pathreadanyone signed in (a key or a session)not-authenticated
GET /docsreadanyone
GET /favicon.svgreadanyone
POST /filewriteanyone signed in (a key or a session)not-authenticated
GET /fonts/:filereadanyone
GET /formatsreadanyone signed in (a key or a session)not-authenticated
GET /goalsreadanyone signed in (a key or a session)not-authenticated
GET /goals/:refreadanyone signed in (a key or a session)not-authenticated
POST /gradewriteanyone signed in (a key or a session)not-authenticated
GET /gtmreadanyone signed in (a key or a session)not-authenticated
GET /healthreadanyone
GET /homereadanyone signed in (a key or a session)not-authenticated
GET /home/summaryreadanyone signed in (a key or a session)not-authenticated
GET /impactreadanyone signed in (a key or a session)not-authenticated
GET /installreadanyone
GET /libraryreadanyone signed in (a key or a session)not-authenticated
GET /logreadthe ownernot-authenticated, not-allowed
GET /loginreadanyone
POST /loginwriteanyone
GET /logoutreadanyone
GET /mapreadanyone signed in (a key or a session)not-authenticated
GET /map/:planereadanyone signed in (a key or a session)not-authenticated
GET /map/lightsreadanyone signed in (a key or a session)not-authenticated
GET /map/nodereadanyone signed in (a key or a session)not-authenticated
GET /map/screensreadanyone signed in (a key or a session)not-authenticated
POST /mcpwriteanyone signed in (a key or a session)not-authenticated
GET /missingreadanyone
POST /open-itemswriteanyone signed in (a key or a session)not-authenticated
GET /orgsreadanyone signed in (a key or a session)not-authenticated
POST /orgswriteanyone
GET /orgs/newreadanyone
POST /orgs/seatwritea signed-in browsernot-authenticated, not-allowed
POST /previewwriteanyone signed in (a key or a session)not-authenticated
GET /preview/:idreadanyone signed in (a key or a session)not-authenticated
GET /profilereadanyone signed in (a key or a session)not-authenticated
POST /profilewriteanyone signed in (a key or a session)not-authenticated
POST /projectwriteanyone signed in (a key or a session)not-authenticated
GET /projectsreadanyone signed in (a key or a session)not-authenticated
GET /question/:qidreadanyone signed in (a key or a session)not-authenticated
POST /questions/:qid/rulewritethe ownernot-authenticated, not-allowed
POST /rankwriteanyone signed in (a key or a session)not-authenticated
GET /readreadanyone signed in (a key or a session)not-authenticated
POST /regradewriteanyone signed in (a key or a session)not-authenticated
GET /render/:hashreadanyone signed in (a key or a session)not-authenticated
POST /render/restorewriteanyone signed in (a key or a session)not-authenticated
POST /respondwriteanyone signed in (a key or a session)not-authenticated
POST /roundwriteanyone signed in (a key or a session)not-authenticated
GET /searchreadanyone signed in (a key or a session)not-authenticated
POST /signoutwriteanyone signed in (a key or a session)not-authenticated
GET /signupreadanyone
POST /signupwriteanyone
GET /storagereadthe ownernot-authenticated, not-allowed
GET /updatesreadanyone signed in (a key or a session)not-authenticated
GET /versionsreadanyone signed in (a key or a session)not-authenticated
GET /versions/:vreadanyone signed in (a key or a session)not-authenticated
POST /versions/publishwritethe ownernot-authenticated, not-allowed
POST /versions/restorewritethe ownernot-authenticated, not-allowed
GET /viewreadanyone signed in (a key or a session)not-authenticated
GET /whoamireadanyone signed in (a key or a session)not-authenticated
POST /wrap-upwriteanyone signed in (a key or a session)not-authenticated
How a call fails

3 failure classes

not-authenticated
No valid credential reached this door — no session cookie, and no valid Authorization: Bearer token resolved to a person (a key in the address signs no one in). Next: Authenticate — sign in, send a valid bearer token, or a valid reader key — then retry the exact same call.
not-allowed
The caller authenticated fine, but its role, scope, or ownership may not do this specific thing (an owner-only door, a read-only OAuth grant on a write tool, a credential that doesn't own the resource). Next: Do not retry unchanged — this is a role/scope/ownership gate, not a transient failure. Use a credential that holds the right role or scope, or ask its holder.
not-found
The door authenticated the caller fine, but the id/ref/key asked for does not exist, or isn't visible to this caller. Next: Check the id/ref for a typo or staleness; do not retry the exact same call unchanged.
Help and privacy

Support

Email [email protected], or see the support page. Never send a passphrase, key or one-time code.

How sharingu handles your organization's data: the privacy notice.