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

olio-volunteer-mcp

v1.0.0

Published

MCP server for the Olio Volunteer Hub - browse Food Waste Hero collections, your squads, and your collection history.

Downloads

134

Readme

olio-volunteer-mcp

MCP server for the Olio Volunteer Hub — browse Food Waste Hero collections, your squads, and your collection history.

Note: This is an unofficial tool, not affiliated with or endorsed by Olio. It calls the Volunteer Hub on your behalf using your own logged-in session, in the same way your browser would when you visit the site. Because of this, it can break at any time without warning if Olio changes the Hub.

If you hit problems with this server, open an issue on this repo — do not bother Olio support.

Use Cases

Find a slot tonight near home: "Are there any unclaimed Olio collections within 1.5 miles of me, this evening, that I could pick up?"

See what a slot typically yields: "What kind of food has historically been collected at the Waitrose Clerkenwell Saturday morning slot?"

Check upcoming commitments: "What collections do I have in the next two weeks?"

Audit your squads: "Which squads am I in, and who's the squad captain for each?"

Setup

  1. Log in to https://volunteers.olioex.com in a browser.
  2. Open DevTools → Application → Cookies → https://volunteers.olioex.com, copy the value of _session_id.
  3. Configure the MCP:
claude mcp add olio-volunteer-mcp \
  -e OLIO_SESSION_ID="..." \
  -- npx -y olio-volunteer-mcp

The session cookie expires after a while; if tools start returning auth errors, refresh it the same way.

HTTP transport: this server only speaks stdio. If you need HTTP, run it behind mcp-auth-wrapper (or similar) so the server is gated by proper auth.

Environment Variables

| Variable | Required | Description | | ------------------ | -------- | ------------------------------------------------------------------------------------------ | | OLIO_SESSION_ID | Yes | Value of the _session_id cookie from a logged-in Volunteer Hub session. | | OLIO_BASE_URL | No | Base URL of the hub (default: https://volunteers.olioex.com). |

Tools

| Tool | Description | | ----------------------------- | ---------------------------------------------------------------------------------------------------- | | list_available_collections | List unclaimed collections near the volunteer's saved location, with rich filters. | | get_collection | Get a collection by id, plus its store and business in one call. Optionally include inductions. | | get_collection_articles | List the articles (food items) historically collected at a given schedule/window. | | list_my_collections | List your upcoming collections (default) or your history (when include_history=true). | | list_my_squads | List the squads/stores you are a member of, with business lookups by default. | | get_stores | Resolve one or more store ids to full store records. | | get_businesses | Resolve one or more business ids to full business records. | | get_current_user | Profile of the logged-in volunteer (home location, roles, preferences). | | call_api | Escape hatch for any Volunteer Hub endpoint. Session cookie is added automatically. |

All tools are read-only. The hub does expose write endpoints (claim/unclaim a slot, etc.) but they're intentionally not wired up here — claiming food collections is an action with a real-world commitment, so it belongs in the official app, not in an LLM tool.

Contributing

Pull requests welcome.

  1. npm install
  2. npm run test — unit tests run by default. End-to-end tests against the real Volunteer Hub run when OLIO_SESSION_ID is set: OLIO_SESSION_ID=... npm run test.
  3. npm run build