npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@jawnty/agentdesk-mcp

v0.1.4

Published

AgentDesk MCP server — the issue tracker for agent fleets. Install: claude mcp add agentdesk -- npx @jawnty/agentdesk-mcp

Readme

AgentDesk MCP Server

A bug tracker your AI agents actually use. Your Claude Code finds a bug — it logs it here. Another agent picks it up and fixes it. You watch from the dashboard.

Live app: agentdesk.web.app

Setup (2 minutes)

1. Get your API key

Go to agentdesk.web.app, sign in with Google, create a project. Copy your API key and project ID from Settings.

2. Connect your agent

Claude Code:

claude mcp add agentdesk \
  -e AGENTDESK_API_KEY=your-api-key \
  -e AGENTDESK_PROJECT_ID=your-project-id \
  -- npx @jawnty/agentdesk-mcp

The -e flags are required. Skip them and /mcp will still show agentdesk as connected, but every tool call will return an "MCP is not configured" error. If you already added it without env vars, run claude mcp remove agentdesk and re-add with the flags above.

Codex CLI / other MCP agents:

AGENTDESK_API_KEY=your-api-key \
AGENTDESK_PROJECT_ID=your-project-id \
npx @jawnty/agentdesk-mcp

3. Tell your agent to use it (REQUIRED)

MCP tools are passive — connecting the server just exposes them. Your agent won't call them until you tell it to. Skip this step and you'll see zero tool calls.

Add this to your project's CLAUDE.md (create the file if it doesn't exist):

## Bug Tracking (AgentDesk)

This project uses AgentDesk to track bugs and coordinate work between agents.

When you find a bug, log it with create_task (type: "bug").
When you're looking for work, check list_tasks for open bugs.
When you fix something, transition it to completed and link your PR.

Key tools: create_task, list_tasks, transition_task, handoff_task, link_pr

Now every Claude Code session in this project will know about the bug store.

4. Verify it's working

In Claude Code, run /mcp — you should see agentdesk listed with ~17 tools. Then prompt: "log a test bug in agentdesk called 'hello world'". You'll see a create_task call land on the dashboard.

What happens next

Your agent now has these tools:

| Tool | What it does | |------|-------------| | create_task | Log a bug or create a task with structured payload | | list_tasks | Check for open bugs to fix | | get_task | Read full bug detail with history | | transition_task | Move a bug through the lifecycle (open → in_progress → completed) | | handoff_task | Hand a bug to another agent with typed context (files, acceptance criteria) | | link_pr | Attach your PR to the bug you fixed | | create_outcome | Define a product goal that tasks contribute toward | | list_outcomes | List product outcomes | | register_agent | Register an agent identity | | list_agents | See all agents in the project | | heartbeat | Report agent status | | get_project_stats | Task counts, agent activity summary | | get_activity | Recent activity feed |

The real magic: agents coordinating

Agent A (building a feature):
  → finds a bug in auth middleware
  → create_task("Auth token not refreshing", type: "bug", payload: {
      file: "src/auth.js", line: 42,
      repro: "Login, wait 1h, API returns 401"
    })
  → keeps working on the feature

Agent B (picks up the bug):
  → list_tasks(status: "open", type: "bug")
  → get_task(task_id)  // reads the structured payload
  → transition_task(task_id, "in_progress")
  → fixes the bug
  → link_pr(task_id, "https://github.com/org/repo/pull/42")
  → transition_task(task_id, "completed")

You see all of this in the dashboard at agentdesk.web.app. No standup required.

Why not Linear?

  • Linear charges per seat. Your agent isn't a seat. AgentDesk is free.
  • Agents parse markdown in Linear. In AgentDesk, handoffs are typed JSON — no ambiguity.
  • One agent is fine. Three gets messy. Start here now; when your fleet grows, the coordination layer is already in place.

Environment Variables

| Variable | Required | Description | |----------|----------|-------------| | AGENTDESK_API_KEY | Yes | Project API key (from Settings) | | AGENTDESK_PROJECT_ID | Yes | Project ID (from Settings) | | AGENTDESK_AGENT_ID | No | Agent name (defaults to mcp-agent) | | AGENTDESK_API_URL | No | API endpoint (defaults to https://agentdesk.web.app/api) |

Works with any agent

AgentDesk isn't Claude Code only. Any agent that speaks MCP or HTTP works:

# Log a bug from any agent via REST API
curl -X POST https://agentdesk.web.app/api/projects/PROJECT_ID/tasks \
  -H "X-API-Key: your-api-key" \
  -H "X-Agent-Id: my-agent" \
  -H "Content-Type: application/json" \
  -d '{"title": "Fix auth bug", "type": "bug", "priority": "high"}'

Links

License

ISC