mcp server for the unntak.no agent api
Project description
unntak-mcp
mcp server for the unntak.no agent api. lets any mcp client (claude code, claude desktop, cursor, ...) read, create and work on unntak tasks with an agent token.
the server runs locally over stdio. the token stays in the local environment
and is only sent to unntak.no (or the explicitly configured UNNTAK_URL).
setup
- in unntak.no, open
:)→ settings → agents and create a token. the token is scoped to a tag path (likeagent;007), so the agent only ever sees tasks under those tags. - add the server to your client:
claude mcp add unntak --env UNNTAK_TOKEN=unntak-agent-... -- uvx unntak-mcp
for a local unntak instance, add --env UNNTAK_URL=http://localhost:8000.
the token is a password. never commit it, paste it into issues, or include it in logs. revoke it in unntak settings if it is exposed.
connection check
check the production api and token before configuring an mcp client:
UNNTAK_TOKEN=unntak-agent-... uvx unntak-mcp --check
a successful check prints the agent name, scope, and open task count without changing any tasks.
agent flow
the server sends these rules to the model automatically on connect: check list_tasks at session start (scheduled tasks appear when due), read a task's comments before working on it, start_task before working (409 = someone else has the timer, take another task), comment progress along the way, and always complete_task or stop_task before ending a session so no timer is left running.
tools
list_tasks— open tasks in the agent's scopeget_task— one task with commentsadd_task— create a task (scope tags are always prepended)start_task/stop_task— run the focus timer; the owner sees it livelog_time— log a block of seconds without the live timercomment— comment on a task under the agent's namecomplete_task— finish a task and archive it
skill (no mcp needed)
skill/SKILL.md is an agent skill for clients that read skills instead of
running mcp servers (like claude code project skills). copy it into a
project's .claude/skills/unntak/ and set UNNTAK_TOKEN in the environment;
the agent then works the same flow over plain http.
development
uv sync --dev
uv run pytest
uv build --no-sources
test the built wheel rather than the editable source:
UNNTAK_TOKEN=unntak-agent-... \
uvx --from ./dist/unntak_mcp-0.1.0-py3-none-any.whl unntak-mcp --check
release
the repository includes CI for Python 3.11 and 3.14. it builds and smoke-tests
both distribution formats on every pull request and push to main.
for publishing, create a pypi environment in the github repository and add
L0JK/unntak-mcp with workflow publish.yml as a trusted publisher in the
pypi project settings. no pypi token is stored in github.
make sure the package version is final, then create a matching tag:
uv run pytest
uv build --no-sources
git tag -a v0.1.0 -m v0.1.0
git push origin v0.1.0
the tag starts the publish workflow. it refuses to publish if the tag and package versions differ.
after the pypi package is available, publish server.json separately to the
official mcp registry. the registry stores discovery metadata; pypi stores the
installable package.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file unntak_mcp-0.1.0.tar.gz.
File metadata
- Download URL: unntak_mcp-0.1.0.tar.gz
- Upload date:
- Size: 53.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97ff62a9fa7da7466ad629b04de7acad46f3f19db210bfdd7389ac69cd74645c
|
|
| MD5 |
d37e0c8216990919a5937cdc1db690b7
|
|
| BLAKE2b-256 |
4f137d05799aa19b99ff71e1c119652efa2b3147243e4c5af08c847d064c88d1
|
File details
Details for the file unntak_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: unntak_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08ac9fb4a2560cbf053f848bf77676b862dce8f0b1460ec8fe6dcd28c55a6438
|
|
| MD5 |
42f48f73cd9d918f87078b9bca636b70
|
|
| BLAKE2b-256 |
a35a1d1bda6df4a9465c4bdbb5f04246cdd666000347f49ee91c3e74abc78fdc
|