Back to Browse

Proofite MCP Server

Developer ToolsLow Risk10.0MCP RegistryLocalRemote
Free

Server data from the Official MCP Registry

Read your AI-written daily briefing and retune the filter behind it: feeds, newsletters, topics.

About

Read your AI-written daily briefing and retune the filter behind it: feeds, newsletters, topics.

Remote endpoints: streamable-http: https://proofite.com/mcp

Security Report

10.0
Low Risk10.0Low Risk

Valid MCP server (1 strong, 1 medium validity signals). No known CVEs in dependencies. Package registry verified. Imported from the Official MCP Registry.

Endpoint verified · Requires authentication · 2 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Your Proofite API key, created at https://proofite.com/app/settings → ConnectionsRequired

Environment variable: PROOFITE_API_KEY

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

Proofite MCP server

Give your AI assistant the keys to your information diet.

Proofite turns the sources you choose — newsletters, RSS feeds, monitored web searches, saved links — into one personal briefing every morning, written by AI and available as a podcast. This MCP server lets any agent read that briefing and, more importantly, retune the filter behind it: what gets in, how deep, how technical, how often, and what never appears again.

It is the same server the product uses for its own voice mode, so it is not a demo surface: it is how Proofite is driven.

you   → "too much crypto this week, and go deeper on the EU regulation"
agent → correct_briefing(note: "…")
        → topic weights adjusted, depth raised, deep dive queued
        → tomorrow's briefing is different

Install

Remote (recommended). Streamable HTTP, no install. Create a key in Proofite under Settings → Connections, then:

claude mcp add --transport http proofite https://proofite.com/mcp \
  --header "Authorization: Bearer pfk_live_…"

Or in any client that reads a JSON config:

{
  "mcpServers": {
    "proofite": {
      "type": "http",
      "url": "https://proofite.com/mcp",
      "headers": { "Authorization": "Bearer pfk_live_…" }
    }
  }
}

stdio bridge, for clients that do not speak HTTP yet:

{
  "mcpServers": {
    "proofite": {
      "command": "npx",
      "args": ["-y", "proofite-mcp"],
      "env": { "PROOFITE_API_KEY": "pfk_live_…" }
    }
  }
}

Tools

ToolWhat it does
get_briefingreadRead the user's personal AI-written news briefing (daily digest) in full markdown: every story selected today from their newsletters, RSS feeds and monitored web searches, with sources. Returns the latest briefing by default, or a specific one by id or date. Also returns an index of entry ids, needed to rate or correct individual stories.
list_briefingsreadList the user's past daily briefings (most recent first) with date, title, number of stories and whether an episode exists. Use it to find the id of a specific day before reading or correcting it.
get_information_dietreadRead everything that shapes what reaches this person: delivery schedule, length, technicality, depth, stance and tone, stated interests and no-go topics, the profile the system has learned about them, and the per-topic preferences built from their feedback (affinity, muted, followed). This is the full picture of their news filter — read it before changing anything.
list_sourcesreadList the topic inboxes this person feeds their briefing with: each one has a dedicated email address for newsletter subscriptions, plus RSS feeds and monitored web searches. Shows how much each produced recently, its priority and whether it is included in the briefing.
get_sourcereadInspect one topic inbox in detail: every RSS feed (with its health and last fetch), every monitored web search, X/Twitter profiles, and the newsletters currently arriving at its dedicated address. Use it before removing or reorganising anything.
get_podcast_episodereadGet the audio episode generated from a briefing: a private podcast narrated in the user's language, with a playable URL and the show notes listing every source. Returns the latest episode by default.
list_read_laterreadList what is queued in the read-later inbox: links and forwarded emails that are guaranteed to be covered in the next briefing.
list_deep_divesreadList the deep-dive research requests waiting to be covered: topics the user asked the briefing to investigate with fresh web research.
get_accountreadAccount status: plan, whether the briefing is currently running, when the next one is due, how many sources and stories are in the system, and the AI cost accrued this month.
update_information_dietwriteChange how and when the briefing reaches this person: delivery time and days, length, technicality, depth, stance, tone, stated interests and topics to avoid, language, timezone, podcast and email delivery. Pass only the keys you want to change. Read get_information_diet first — these are global settings, not per-topic ones (for a single topic use tune_topic).
tune_topicwriteTune how a single topic is treated in future briefings: more or less of it, more or less technical, deeper or shorter, more or less often, muted entirely, or followed so every development gets reported. This is the precise instrument — for a vague comment like "too much crypto lately" use correct_briefing instead.
correct_briefingwriteTell the briefing what was wrong with it, in plain language — "too much crypto and not enough on the EU regulation", "keep it shorter", "explain the technical parts more simply", "follow this story". An AI editor reads the note against the actual briefing and turns it into concrete adjustments: topic preferences, settings, deep-dive requests. This is the main way a person retunes their news feed by talking.
rate_briefing_entrywriteGive a precise up/down signal on one story of a briefing: more like this, less like this, more technical, simpler, deeper, shorter, follow it, or mute its topics. Applies to the topics of that story, so the next briefing weighs them differently.
set_learned_profilewriteRead or rewrite the free-text profile the briefing uses to know who this person is — their work, projects, recurring interests, what they already know. Appending is usually better than replacing: pass mode "append" to add a line.
request_deep_divewriteAsk the next briefing to investigate a topic properly, with fresh web research: it will include a mini-dossier with sources. Use it whenever the person says "I want to know more about X" or "keep digging on this".
save_for_laterwritePut a link or a note into the read-later queue: whatever lands there is guaranteed to be covered in the next briefing. The page is fetched and its text stored, so it can be summarised even if the site later blocks access.
generate_briefingwriteGenerate a briefing immediately instead of waiting for the scheduled time, using everything collected so far. Costs real AI money and takes a couple of minutes, so use it only when explicitly asked. Returns the id to poll with get_briefing.
create_sourcewriteCreate a new topic inbox: a themed container with its own dedicated email address (subscribe newsletters to it), which can hold RSS feeds and monitored web searches. This is how you add a whole new subject to someone's information diet.
update_sourcewriteChange a topic inbox: rename it, change its description, raise or lower its priority in the briefing, set a per-inbox technicality level, temporarily exclude it from the briefing or pause it entirely.
delete_sourcewritePermanently delete a topic inbox with all its feeds, searches and collected content. Irreversible: the dedicated email address stops working too. Prefer update_source with is_active false when in doubt.
add_feedwriteAdd an RSS/Atom feed to a topic inbox. You can pass the site address instead of the feed URL — the server fetches the page and discovers the feed. If it fails, the reason is precise (blocked by the site, gone, unreadable) so it can be reported honestly.
remove_feedwriteRemove an RSS feed from a topic inbox. Already-collected content stays; nothing new arrives from it.
add_web_searchwriteMonitor a Google query every day and feed the results into a topic inbox: the standing-search way to follow a company, a person, a law or a niche subject that has no RSS feed. kind "news" watches the news index, "search" the whole web.
remove_web_searchwriteStop monitoring a standing web search: no new results from that query will reach the briefing. What it already collected stays where it is.
discover_sourcesreadDescribe a subject in plain words and get back real, working sources for it: RSS feeds validated live by the server (dead ones are dropped before you see them), web searches worth monitoring, and newsletters worth subscribing to. Nothing is added — it returns proposals to pass to add_feed / add_web_search.
import_opmlwriteImport subscriptions from another RSS reader (Feedly, Inoreader, FreshRSS, NetNewsWire) by passing the OPML file contents. Set dry_run true first to see what is in it and what is already present; then run it for real to add them (they are validated one by one, and the ones that fail come back with the reason).
unsubscribe_newsletterwriteUnsubscribe from a newsletter arriving in one of the inboxes. When the sender supports one-click unsubscribe the server does it directly; otherwise it returns the URL a human has to open, and says so honestly.

It also exposes resources (proofite://briefing/latest, proofite://diet, proofite://sources) and two prompts (tune-my-feed, catch-me-up).

Notes that matter

  • Keys can be read-only, and the server enforces it: a read-only key cannot change a setting however convincingly it is asked. Create one per client, revoke individually.
  • Changes apply from the next briefing, never retroactively.
  • Scoped to one account. The key identifies a person; the server has no way to reach anyone else's information.
  • Protocol. Streamable HTTP. Speaks the 2026-07-28 revision (stateless, per-request _meta, mirrored Mcp-Method / Mcp-Name headers, server/discover) and the older initialize handshake used by most clients today — it detects which era you speak from your first request.

Requirements

A Proofite account — free trial, no card. The briefing, the podcast and this server are the same product seen from three sides.

Links

  • proofite.com/mcp — live documentation, generated from the server's own tool registry
  • proofite.com — what Proofite is
  • https://proofite.com/.well-known/mcp.json — machine-readable manifest

MIT © Nicola Moretti mcp-name: com.proofite/proofite

Reviews

No reviews yet

Be the first to review this server!