Markland Quickstart
Publish a markdown doc with your agent in five steps. Under two minutes, start to share link.
Markland is an MCP-based document publishing platform. Your AI agent calls a tool, a doc goes up, a share link comes back. This quickstart takes you from zero to your first shared document using Claude Code. The same steps work with any other MCP-compatible client.
Before you start
You'll need:
- A terminal with
claude(the Claude Code CLI) installed and signed in. - An email address you can receive a magic link on.
- About two minutes.
No credit card. No API keys to copy. Markland issues you a scoped bearer token the first time you connect Claude Code, and the CLI stores it for you.
1. Sign up
Open the Markland landing page, enter your email, and click the magic link that lands in your inbox. That's the whole signup flow — no password to set, no profile to fill out.
Once you're signed in you'll see the Explore page. Keep that tab open; you'll come back to it in step 5 to see your doc.
2. Wire up the MCP server
Open Claude Code (CLI or web) and send this message:
Install the Markland MCP server from https://markland.dev/setup
Claude Code fetches the runbook at that URL, walks you through a one-time browser authorization, and then
runs claude mcp add with the right transport flag and bearer token. When it's done,
claude mcp list should show markland in the list.
Under the hood Markland uses the Model Context Protocol — the tool surface your agent actually calls. There is no REST SDK to learn; the tool names are the API.
3. Publish your first doc
Ask Claude:
Publish a markdown doc titled “Hello Markland” with some notes about my project.
Your agent calls the markland_publish tool. You'll get back a share URL that looks like
/d/<share-token>. The doc belongs to you, is private by default, and only you (and any agents you
authorize on your behalf) can read it.
You can ask Claude to publish any markdown — a spec, a plan, a research note, a CLAUDE.md file, a
daily standup. Markland isn't opinionated about shape, only about being markdown.
4. Share it
Now grant access to a teammate:
Grant view access on that doc to friend@example.com.
Your agent calls markland_grant. Your friend receives an email with a link. If they're already signed in
to Markland they see the doc right away; if not, they click the magic link in the invite email and are dropped onto
the doc after signing in.
Grants are per-doc. You can grant view, comment, or edit. You can also grant to another agent by its agent ID, so an agent on a teammate's laptop can read and append to docs on yours.
5. View the doc
Open the share link in your browser. You'll see the rendered markdown. Head back to /explore and you'll see the doc listed under Mine + Shared.
Troubleshooting
-
claude mcp listdoesn't show markland. Runclaude mcp addagain — the setup endpoint is idempotent and safe to re-run. -
The agent says it doesn't know about
markland_publish. Restart Claude Code. New MCP servers are only picked up at session start. - The share link returns 404. The token is case-sensitive and must include every character. Paste the whole thing rather than retyping.
-
I want to revoke a grant.
Ask Claude: “Revoke access for friend@example.com on that doc.”
The agent calls
markland_revoke.
What's next
Browse public docs to see how other people are using Markland. Read the alternatives page if you're weighing this against Git, Notion, Google Docs, or HackMD. Stuck on anything the troubleshooting list doesn't cover? Reply to the signup email — a real human reads it.
FAQ
- Do I need an API key?
- No. The
/setuprunbook walks Claude Code through a device-authorization flow that mints a per-user bearer token, which Claude Code stores for you. You never see or paste the token; it lives in the CLI’s MCP config. - Can I use Markland from Cursor or another MCP client?
- Yes. Any MCP-capable client can register Markland and call its tools. The setup snippet on the landing page is in plain MCP-config JSON — copy it into whichever client you use. The CLI flow on this page is the Claude Code shortcut.
- What does
markland_publishactually do? - Creates a new document with the markdown body you pass in, returns its stable ID and a public share URL. Subsequent edits go through
markland_updatewith anif_versionargument so concurrent writers see a clean conflict instead of clobbering each other. - Can I make a doc public without a share link?
- Yes — pass
public=truetomarkland_publish. The doc shows up on /explore, gets a stable share URL, and is reachable without a grant. Default is private. - What if I want to revoke access?
- Ask Claude something like “Revoke
friend@example.comon that doc.” The agent callsmarkland_revoke; the grant is removed and the audit log captures who removed it.
Don’t have an account yet?
Drop your email and we’ll send a magic link the moment a slot opens. No password, no pitch deck, no spam.