agentskills.codes
OP

opencollective

Query and interact with Open Collective's GraphQL API v2. Browse collectives, view budgets/transactions/expenses, manage memberships, submit expenses, and explore the open-source funding ecosystem.

Install

mkdir -p .claude/skills/opencollective && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/16203" && unzip -o skill.zip -d .claude/skills/opencollective && rm skill.zip

Installs to .claude/skills/opencollective

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Query and interact with Open Collective's GraphQL API v2. Browse collectives, view budgets/transactions/expenses, manage memberships, submit expenses, and explore the open-source funding ecosystem.
197 charsno explicit “when” trigger

About this skill

Open Collective

Query and manage Open Collective accounts, finances, and community data via their public GraphQL API v2.

Endpoint & Auth

  • Endpoint: https://api.opencollective.com/graphql/v2
  • Unauthenticated: 10 req/min, public read-only
  • Authenticated: 100 req/min — pass Personal-Token: <token> header
  • Token creation: https://opencollective.com/<your-slug>/admin/for-developers
  • Not available via API: Stripe/PayPal payment creation, captcha-protected operations

MCP Server Setup

Use mcp-graphql to expose the OC API as MCP tools. With fnox-backed auth:

claude mcp add opencollective-graphql -- /bin/sh -c \
  'unset PYTHONPATH && \
   ENDPOINT=https://api.opencollective.com/graphql/v2 \
   HEADERS="{\"Personal-Token\":\"$(fnox get OPENCOLLECTIVE_TOKEN --age-key-file ~/.age/key.txt -c ~/v/instance-onboarding/fnox.toml)\"}" \
   exec npx mcp-graphql'

Store your token: fnox set OPENCOLLECTIVE_TOKEN <token> --age-key-file ~/.age/key.txt -c ~/v/instance-onboarding/fnox.toml

Quick Start

If opencollective-graphql MCP server is available, use its query-graphql tool. Otherwise use curl.

query { account(slug: "webpack") { name stats { balance { valueInCents currency } } } }

Core Queries

QueryUse When
account(slug)Look up any account by slug
accounts(searchTerm, type, limit)Search/browse collectives
host(slug)Look up a fiscal host
hosts(limit)Browse fiscal hosts
expenses(account, status, limit)View submitted expenses
expense(id)Single expense detail
transactions(account, type, limit)View financial activity
orders(account, status, limit)View contributions/donations
search(searchTerm)General search (beta)
meCurrent authenticated user
tier(id)Sponsorship tier details
tagStats(searchTerm)Explore ecosystem categories

Core Mutations (all require auth)

MutationUse When
createExpenseSubmit expense for reimbursement
editExpenseUpdate existing expense
processExpense(action)Approve/reject/pay expense
createOrderCreate contribution/donation
cancelOrderCancel recurring contribution
createCommentComment on expense/update
createUpdate / publishUpdatePost update to collective
inviteMemberInvite someone to join
followAccount / unfollowAccountFollow/unfollow collective
createWebhookSet up notifications
applyToHostApply collective to fiscal host
createCollectiveCreate new collective
createTier / editTierManage sponsorship tiers

Reference Guide

TopicFileLoad When
Query Templatesreferences/queries.mdNeed ready-to-use GraphQL queries
Mutation Templatesreferences/mutations.mdNeed to write/modify data
Schema Typesreferences/types.mdNeed type details for building queries
Weird Mutualismreferences/weird-mutualism.mdExploring OC's mutualist ecosystem patterns

Key Patterns

  • Pagination: All collections use limit/offset, return totalCount + nodes
  • Account refs: {slug: "x"}, {id: "uuid"}, or {legacyId: 123}
  • Amounts: Always { valueInCents: Int, currency: String } — divide by 100 for display
  • See references/queries.md for full filtering examples

Account Types

COLLECTIVE, ORGANIZATION, INDIVIDUAL, FUND, EVENT, PROJECT, HOST, VENDOR

Status Enums

  • Expense: DRAFTUNVERIFIEDPENDINGAPPROVEDPROCESSINGPAID (also REJECTED, ERROR, CANCELED)
  • Order: NEW, PENDING, ACTIVE, CANCELLED, REJECTED, PAID, ERROR, EXPIRED
  • Transaction type: CREDIT (in) / DEBIT (out)
  • Transaction kind: CONTRIBUTION, EXPENSE, ADDED_FUNDS, HOST_FEE, PAYMENT_PROCESSOR_FEE, PLATFORM_FEE

Tips

  • stats subfields on accounts give quick financial summaries
  • members(role: [BACKER]) lists financial contributors
  • tiers shows sponsorship levels; updates shows blog posts
  • socialLinks has website, twitter, github URLs

Search skills

Search the agent skills registry