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

@fixyourdocs/mcp-server

v0.2.0

Published

Model Context Protocol server for the Docs Feedback Protocol — exposes a single `file_doc_feedback` tool that any MCP client (Claude Desktop, Cursor, Codex, Gemini CLI) can call to file a structured docs-feedback report to https://hub.fixyourdocs.io

Readme

@fixyourdocs/mcp-server

Model Context Protocol (MCP) server that exposes a single tool — file_doc_feedback — so any MCP client (Claude Desktop, Cursor, Codex, Gemini CLI, …) can file a structured documentation-feedback report to the FixYourDocs hub at hub.fixyourdocs.io when it encounters docs that are broken, incorrect, outdated, missing, unclear, or otherwise unhelpful.

Reports are forwarded to a GitHub Issue on the doc owner's repository when they have a FixYourDocs integration installed. No phone-home, no telemetry — the server only contacts the hub when an agent explicitly calls the tool.

Install

The server is designed to be run via npx, so you typically don't install it directly — your MCP client launches it on demand:

npx -y @fixyourdocs/mcp-server

It speaks the standard MCP stdio transport. There is nothing to configure unless you want to point at a different hub (see Environment variables below).

Client configuration

Each MCP client has its own config file, but the shape is the same: a named server entry with command + args.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "fixyourdocs": {
      "command": "npx",
      "args": ["-y", "@fixyourdocs/mcp-server"]
    }
  }
}

Restart Claude Desktop. The file_doc_feedback tool should appear in the tool list.

Cursor

Edit ~/.cursor/mcp.json (or your workspace's .cursor/mcp.json):

{
  "mcpServers": {
    "fixyourdocs": {
      "command": "npx",
      "args": ["-y", "@fixyourdocs/mcp-server"]
    }
  }
}

Codex / OpenAI Codex CLI

Edit ~/.codex/config.toml:

[mcp_servers.fixyourdocs]
command = "npx"
args = ["-y", "@fixyourdocs/mcp-server"]

mcp-inspector (for verification)

npx @modelcontextprotocol/inspector npx -y @fixyourdocs/mcp-server

The inspector UI lists file_doc_feedback, accepts a fixture report, and shows the { id } returned by the hub.

Tool: file_doc_feedback

Input

Mirrors the v0 spec's Report envelope:

| Field | Type | Required | Notes | | ------------------------- | ----------- | -------- | -------------------------------------------------------------------------------------- | | doc_url | string | yes | URL of the doc page that produced the problem. Max 2048 chars. | | agent.name | string | yes | Lowercase kebab-case identifier, e.g. claude-code, cursor, codex. Max 64 chars. | | agent.version | string | no | Optional agent version string. | | agent.vendor | string | no | Optional vendor / publisher, e.g. Anthropic. | | report.kind | enum | yes | One of: broken, incorrect, outdated, missing, unclear, other. | | report.summary | string | yes | One-line description, ≤ 280 chars. | | report.details | string | no | Optional longer description. ≤ 8000 chars. | | report.suggested_fix | string | no | Optional concrete suggestion. ≤ 4000 chars. |

Output

{
  "id": "01ABCDEF0123456789ABCDEFGH"
}

id is a ULID returned by the hub — an idempotency confirmation, not a fetchable handle. Reports are write-only on the public API: there is no retrieval endpoint, and report contents reach the doc owner only via the hub's GitHub-issue forwarding.

Behaviour

  • The server validates the input against the v0 lexical constraints (URL parsing, agent-name pattern, summary length) before contacting the hub. Validation errors are returned as MCP isError: true results with a human-readable explanation.
  • On a 201 Created (new submission) or 200 OK (idempotent duplicate), the tool returns { id } regardless — agents don't need to distinguish, the hub will not double-file the issue.
  • On 429 rate_limited, 5xx, or any network error, the tool surfaces the error verbatim. Clients should treat this as transient and retry with the same payload (the hub deduplicates on body content).

Environment variables

| Variable | Default | Purpose | | ----------------------- | -------------------------------- | -------------------------------------------------------- | | FIXYOURDOCS_HUB_URL | https://hub.fixyourdocs.io | Override the hub base URL. Useful for tests / self-host. |

Privacy

  • No telemetry, no phone-home. The server makes outbound network calls only when an agent explicitly invokes the tool. There is no analytics call, no version-check ping, no diagnostic upload.
  • The report payload contains only the fields the agent supplies (doc URL, agent identity, kind, summary, optional details and suggested fix). No process environment, file paths, or system identifiers are appended.

License

Apache-2.0. See LICENSE.