mcpField
N
Noeto

Noeto

Local
noeto.onlineProductivity0Updated 4w ago

About Noeto

Noeto is an MCP server for AI agents working with a Noeto kanban board. It supports board and card search, card updates and comments, and documents and attachments, while preventing deletion of user-created content.

Key features

  1. 01List boards and inspect columns and cards
  2. 02Search cards by text and attributes
  3. 03Create, update, and move cards
  4. 04Comment on cards
  5. 05Read and attach card documents
  6. 06Read or download attachments

Use cases

  1. 01Find cards by assignee, label, or due date
  2. 02Move a card and update its details
  3. 03Add a comment or document to a card
  4. 04Retrieve an attachment from a card

MCP support

The local MCP server exposes read and write tools for one Noeto team, selected by its access token. It can run through Docker or a native binary and connects to Claude Code, Claude Desktop, and other MCP hosts.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"noeto-tasks-noeto": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"NOETO_TOKEN",
"-e",
"NOETO_API_URL",
"ghcr.io/noeto-tasks/noeto-mcp:v0.6.5"
],
"env": {
"NOETO_TOKEN": "<NOETO_TOKEN>",
"NOETO_API_URL": "<NOETO_API_URL>"
}
}
}
}
Run commanddocker run -i --rm -e NOETO_TOKEN -e NOETO_API_URL ghcr.io/noeto-tasks/noeto-mcp:v0.6.5
Environment variables to set
NOETO_TOKENSecretPersonal access token, from Settings → Access tokens in Noeto. It decides which team the server works.
NOETO_API_URLThe Noeto API root.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocighcr.io/noeto-tasks/noeto-mcp:v0.6.5

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

noeto-mcp

noeto-tasks/noeto-mcp MCP server

An MCP server that lets an AI agent work a noeto kanban board: read it, create and update cards, move them, comment, and keep a written document on a card.

Claude Code files a bug card, moves a card to In Progress and comments a plan, while the noeto board updates beside it

Quick start (Claude Code)

  1. In noeto, Settings → Access tokens → Create token, and copy the secret.

  2. Install the plugin. It bundles the server and the /card workflow:

    /plugin marketplace add noeto-tasks/noeto-mcp
    /plugin install noeto@noeto-mcp
    
  3. Export the token and restart Claude Code:

    export NOETO_TOKEN=noeto_pat_…
    export NOETO_API_URL=https://api.noeto.online/api/v1
    

Then ask: "What's on my board?" More in the plugin README.

Other ways to run it

Docker, for any MCP host:

claude mcp add noeto -s user \
  -e NOETO_TOKEN=noeto_pat_… \
  -e NOETO_API_URL=https://api.noeto.online/api/v1 \
  -- docker run -i --rm -e NOETO_TOKEN -e NOETO_API_URL ghcr.io/noeto-tasks/noeto-mcp:v0.6.5

Or by hand in ~/.claude.json, .mcp.json or Claude Desktop's config:

{
  "mcpServers": {
    "noeto": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "NOETO_TOKEN", "-e", "NOETO_API_URL",
               "ghcr.io/noeto-tasks/noeto-mcp:v0.6.5"],
      "env": {
        "NOETO_TOKEN": "noeto_pat_…",
        "NOETO_API_URL": "https://api.noeto.online/api/v1"
      }
    }
  }
}

Native binary, with Homebrew:

brew install noeto-tasks/tap/noeto-mcp
claude mcp add noeto -s user \
  -e NOETO_TOKEN=noeto_pat_… \
  -e NOETO_API_URL=https://api.noeto.online/api/v1 \
  -- "$(brew --prefix)/bin/noeto-mcp"

Or take an archive from releases (macOS, Linux, Windows). The binary is unsigned, so on macOS run xattr -d com.apple.quarantine noeto-mcp first. Point the config at it by absolute path.

Good to know

  • One server serves one team — the token decides which. For two teams, add two entries with their own tokens (noeto-work, noeto-personal).
  • Against a local noeto from Docker, use http://host.docker.internal:8081/api/v1 (macOS, Windows) or --network host (Linux).
  • It runs as a local process, so it works in Claude Code and Claude Desktop, not in claude.ai in the browser or the mobile apps.

Tools

toolwhat it does
list_boardsthe team's boards, with card countsreads
get_boardone board: columns in order and the cards in themreads
find_cardssearch every board by text, assignee, label, priority, column, due datereads
get_cardone card in full, with comments and the files on itreads
list_memberswho is on the teamreads
whoamiwhich member the token belongs toreads
create_cardadd a card to a columnwrites
update_cardtitle, description, assignee, priority, due date, labelswrites
move_cardto another column, or reorder within onewrites
comment_on_cardpost a commentwrites
read_documentthe Markdown of a document on a cardreads
attach_documentwrite one, replacing the previous copy of that namereplaces
read_attachmenta text or image file on a cardreads
download_attachmentsave any file on a card to disk and return its pathsaves locally
  • Boards, columns, labels and people can be named: move_card(card, column: "Done"). The card itself needs its id, so a typo can never edit the wrong card.
  • none clears a field: update_card(card, due: "none"). An omitted argument leaves it alone.
  • Documents and text files are capped at 512 KB, images at 1.5 MB. Bigger files and other types go through download_attachment.
  • Downloads land in NOETO_DOWNLOAD_DIR (default: noeto-attachments in the system temp directory). In Docker, mount that directory at the same path on both sides — the plugin's config already does.

It deliberately cannot delete anything a person made, and does not create boards, columns or labels. The reasoning behind these and the other choices is in docs/internals.md.

Development

make test         # hermetic, against a fake API
make smoke        # contract check against a running noeto (needs NOETO_TOKEN)
make lint
make docker       # build the image for this machine
make release-dry  # build release artifacts into dist/, publish nothing

Run make smoke after any API change.

Releasing: Actions → Release → Run workflow, with the version (0.6.3). It tests, pins the version, pushes the image, tags, publishes the GitHub release and Homebrew cask, and lists the version in the MCP Registry. It needs a HOMEBREW_TAP_TOKEN secret that can write to noeto-tasks/homebrew-tap. make release-plugin RELEASE=x.y.z does the same from a laptop, except the registry: run the Publish to MCP Registry workflow afterwards.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.