Go Links tools
Go Links’ MCP server, https://www.taktoria.com/mcp/<workspace>/golinks (each workspace has its own), lets an
assistant find, read, create and look after go links as the person who
connected it. See MCP servers for connecting and
authorization.
Roles
What a connection may do follows the person’s role in Go Links:
- An app admin of Go Links (every workspace owner and admin is one) may change any link, whoever it names as editors.
- A member creates links, and changes the ones that name no editors, name them, or that they created.
- A viewer reads what a member would. Their connection lists and accepts
only the read tools, whatever it was granted: a write tool called anyway is
refused (
viewer_only), and the consent page offers them only Read only. See MCP servers.
Everything is done with that person’s rights in Go Links:
- Who may change a link. A link that names no editors can be changed by
anybody with a Go Links seat. One that names editors can be changed by them,
by the person who created it and by Go Links’ app admins. Anybody else gets a
tool error. Editors (
editorUserIds) must be members of the workspace: naming anybody else is aninvalid_inputerror, and nothing is saved.find_peoplefinds them by name or email address. - Drafts. A draft claims its short name without redirecting. Its
destination (
url) isnullto anybody who may not edit it, and a search does not match it for them. - Who may follow a link on the workspace’s own Go Links hostname
(
access):DOMAIN(the default: members, and anybody who proves an email address at the link’s domains),WORKSPACE(members only) orPUBLIC. Domains are chosen from the workspace’s allow-list, its verified domains on the list and its partner domains; an empty list means the whole allow-list. A domain off the list is refused, and one a workspace admin removes stops counting at once.access.domainsisnullto anybody who may not edit the link. Withaccess.requireGoogle, aDOMAINlink accepts only an address proved with Google, never an emailed code; it is ignored where Google sign-in is not set up. A field ofaccessleft out keeps its value.
Links are named two ways: an id, which the tools that change a link take,
and a slug, the short name (roadmap is go/roadmap). get_link takes
either.
Read tools
Listed to every connection with Go Links.
Write tools
Listed only to a connection granted golinks:write, and never to a Viewer of
Go Links.
Every link a tool returns carries its shortUrl and a consoleUrl that opens
it in Go Links, both on the workspace’s Go Links hostname where it has one.
There is no tool that follows a link. Following one counts a click, and an
assistant looking a link up is not somebody visiting it: get_link by slug
says where a link goes, to whoever may see it, without counting anything.
Skills
Step-by-step guides an assistant reads before work that takes several tools
(see Skills for how clients reach them).
Write skills are offered only to a connection granted golinks:write.
create-links-for-a-campaign comes with references/slug-guide.md, on what
Go Links does to a short name and what makes a good one.
Refusals
A refusal is a tool error in plain English: a short name that is taken (naming who made the link), reserved or unusable; a destination that is not http or https; a domain off the allow-list; a link the person may not change; or a link that is not in the workspace, or not there at all.