Skip to main content
Glama

Manage topic access

manage_user_access
DestructiveIdempotent

Grant or revoke an account's access to ntfy topics. Choose read-write, read-only, write-only permissions, or deny/revoke rules to manage topic visibility.

Instructions

Sets or removes an account's access to a topic or topic pattern. Requires an admin account and a confirmation token.

Destructive in both directions, which is why it is gated: taking access away breaks a running publisher, and granting it exposes a topic's traffic to another account.

A pattern may end in "*" to cover a family of topics. "deny" writes an explicit refusal — the only way to carve an exception out of a wildcard grant — whereas "revoke" removes the rule entirely, so a broader wildcard or the server default applies again.

Where NTFY_TOPICS restricts this server, the topic must be one of its entries and a wildcard is refused: a pattern covers topics that are not on that list.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
topicYesA topic name, or a prefix ending in "*".
actionYesread_write, read_only, write_only, deny (explicit refusal), or revoke (remove the rule).
usernameYesThe account to change.
confirm_tokenNoThe token from this tool’s previous, unconfirmed response.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
topicYesThe pattern, after NTFY_TOPICS resolved it.
actionYes
usernameYes
permissionNoWhat ntfy stored. Absent on "revoke", which stores no rule.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.2.0

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the annotations by disclosing that removing access breaks running publishers, granting access exposes traffic, deny is the only way to carve exceptions from wildcard grants, and revoke restores broader rules. This aligns with destructiveHint=true and readOnlyHint=false, and no contradiction with annotations is present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is organized into four short paragraphs: purpose and prerequisites, destructive rationale, pattern/action semantics, and server restrictions. It is front-loaded with the core action, and each sentence adds operational value without meaningful padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive mutation tool with four parameters, a confirmation flow, wildcard constraints, and server-specific restrictions, the description covers all key invocation factors. The presence of an output schema means return-value documentation is already handled, so nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds meaningful context beyond the schema: it explains the wildcard pattern semantics, the practical difference between deny and revoke, and the NTFY_TOPICS restriction. It does not reach 5 because the raw parameter meanings are already well documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Sets or removes an account's access to a topic or topic pattern,' which is a specific verb plus resource and clearly distinguishes this mutation tool from the sibling check_topic_access. It also names the required admin and confirmation gate, so there is no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: it requires an admin account, is destructive in both directions, and is gated by a confirmation token. It also explains wildcard behavior and NTFY_TOPICS restrictions. However, it does not explicitly say 'use check_topic_access instead for read-only checks,' so it stops short of full when-to-use versus alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ni-c/ntfy-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server