{"name":"io.github.runcycles/cycles-mcp-server","slug":"runcycles-cycles-mcp-server","title":"Cycles — Budget Authority for AI Agents","description":"Runtime budget authority for AI agents — reserve, enforce, reconcile spend across providers","url":"https://mcp.market/server/runcycles-cycles-mcp-server","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":26,"stars":0,"forks":1,"downloads_week":37,"last_push_at":"2026-09-24T10:11:58.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/runcycles/cycles-mcp-server","website":"https://runcycles.io","version":"0.6.1","remotes":[],"packages":[{"registryType":"npm","identifier":"@runcycles/mcp-server","version":"0.6.1","runtimeHint":"npx","transport":{"type":"stdio"},"environmentVariables":[{"description":"Cycles API key for authentication. Set CYCLES_MOCK=true for local development without a key.","isRequired":true,"isSecret":true,"name":"CYCLES_API_KEY"},{"description":"URL of the Cycles server (e.g. https://api.runcycles.io). Required unless CYCLES_MOCK=true.","isRequired":true,"name":"CYCLES_BASE_URL"},{"description":"Enable mock mode for local development — no API key or live server required.","default":"false","choices":["true","false"],"name":"CYCLES_MOCK"},{"description":"Optional default tenant merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_TENANT"},{"description":"Optional default workspace merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_WORKSPACE"},{"description":"Optional default app merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_APP"},{"description":"Optional default workflow merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_WORKFLOW"},{"description":"Optional default agent merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_AGENT"},{"description":"Optional default toolset merged into any tool call that omits it (explicit fields win).","name":"CYCLES_DEFAULT_TOOLSET"}]}],"tools":[{"name":"cycles_check_balance","description":"Check current budget balance for a scope. Returns remaining, reserved, spent, allocated, and debt amounts. At least one subject filter (tenant, workspace, app, workflow, agent, or toolset) is required. Do not use as a substitute for cycles_reserve \\u2014 balances can change between check and action.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_commit","description":"Commit actual usage after an operation completes. Always call this after cycles_reserve whether the operation succeeded or failed. Finalizes the budget charge and releases any unused reserved amount back to the pool.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_create_event","description":"Record a usage event directly without the reserve/commit lifecycle. Use for fire-and-forget metering of completed operations where pre-estimation is not available. The event is applied atomically to all derived scopes.","write_action":true,"price_micros":0,"input_schema":null},{"name":"cycles_decide","description":"Lightweight preflight check \\u2014 ask whether an action would be allowed without reserving budget. Does not create a reservation. Use at workflow start to decide strategy. For concurrency-safe budget locking, use cycles_reserve instead.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_extend","description":"Extend the TTL of an active reservation. Use as a heartbeat for long-running operations to prevent the reservation from expiring. Does not change the reserved amount.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_get_reservation","description":"Get details of a specific reservation by ID. Returns status, subject, action, reserved amount, timestamps, and affected scopes. Useful for debugging and monitoring long-running operations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_list_reservations","description":"List reservations, optionally filtered by status (ACTIVE, COMMITTED, RELEASED, EXPIRED) or subject fields. Useful for debugging stuck reservations or auditing budget usage.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_release","description":"Release a reservation without committing. Use when an operation is cancelled, skipped, or fails before execution. Returns the released budget amount back to the pool.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cycles_reserve","description":"Reserve budget before a costly operation (LLM call, tool invocation, external action). Returns a reservation_id to commit or release later. If decision is not ALLOW, do not proceed with the operation. For lightweight preflight checks without reserving, use cycles_decide instead.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-24T21:40:08.187Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T21:40:08.126Z","components":{"code":{"score":25,"max":25,"notes":["4 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@runcycles/mcp-server","version":"0.6.1","found":true,"license":"Apache-2.0","hasInstallScripts":false,"dependencyCount":4,"publishedAt":"2026-07-27T18:02:31.125Z","repositoryUrl":"git+https://github.com/runcycles/cycles-mcp-server.git","weeklyDownloads":37}],"repo":{"found":true,"owner":"runcycles","repo":"cycles-mcp-server","archived":false,"pushedAt":"2026-09-24T10:11:58Z","stars":0,"forks":1,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/260217429?v=4","ownerCreatedAt":"2026-02-08T11:18:07Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/260217429?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":1,"downloadsWeek":37,"license":"Apache-2.0","lastPushAt":"2026-09-24T10:11:58.000Z","score":26}}}},"grade_history":[],"reviews":[]}