rss-publisher-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RSS_AUTH_MODE | No | HTTP upload API authentication mode: 'none' (default) or 'bearer'. | none |
| RSS_MCP_TRANSPORT | No | MCP transport mode: 'stdio' (default) or 'streamable-http'. | stdio |
| RSS_PUBLIC_BASE_URL | Yes | Public base URL used for permalinks and content-addressed asset URLs (e.g., https://example.com). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_feedA | Return feed configuration, current revision, and publication URL. |
| configure_feedC | Update feed/channel configuration. |
| list_active_entriesA | Return compact summaries of entries currently emitted into feed.xml. |
| find_similar_active_entriesB | Find semantic candidates only among currently active/published entries. Similarity is candidate retrieval, not authority to merge. |
| get_entryB | Return the complete canonical FeedEntry by immutable ID. |
| create_entryB | Create a definitely-new entry. Generates a permanent urn:uuid ID if omitted. |
| update_entryA | Patch an active entry while preserving its immutable ID. Archived entries require republish_entry first. |
| publish_batchB | Apply multiple creates/updates in one publisher transaction and rebuild once. |
| correct_entryC | Publish a visible correction while preserving entry identity. |
| retract_entryC | Publish an explicit retraction under the same immutable entry ID. |
| unpublish_entryB | Stop emitting an entry. This does not delete copies already stored by RSS subscribers. |
| republish_entryA | Explicitly revive an archived/unpublished entry into the active feed. |
| get_assetA | Return metadata/public URL for an already-uploaded asset. Binary upload itself is performed over the HTTP asset API. |
| validate_feedB | Strict local RSS/XML validation. |
| audit_feedA | Return interoperability warnings, including private URL/FreshRSS gotchas. |
| rebuild_feedB | Regenerate deterministic public artifacts from authoritative SQLite state. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| service_resource |
TDQS
Scored across 16 tools
Most tools map cleanly to distinct lifecycle actions: create, update, correct, retract, unpublish, republish, and feed/validation operations are well separated. The main ambiguity is between correct_entry and update_entry, since both modify an entry while preserving its identity; the correction framing helps but could overlap for simple edits.
All tools follow a consistent snake_case verb_noun pattern with clear verbs such as get, list, create, update, validate, audit, and rebuild. Even specialized actions like correct_entry, retract_entry, unpublish_entry, and republish_entry use the same convention, making the set predictable.
Sixteen tools is slightly above the usual sweet spot, but each covers a distinct facet of running an RSS publisher: configuration, entry lifecycle, corrections/retractions, validation/audit, rebuild, batching, and assets. It is not bloated, though a few tools like find_similar_active_entries add extra surface beyond a minimal CRUD set.
The entry lifecycle is well covered with create, read, update, unpublish, republish, correct, retract, and batch publish, plus feed configuration, validation/audit, and rebuild. Minor gaps exist around asset management since only get_asset is exposed and binary upload is handled outside the MCP server; there is also no explicit physical delete, though retract/unpublish appear to be intentional immutable alternatives.