Feedmon Docs
Feedmon MCP Manifest
Machine-readable MCP manifest for recent-post retrieval and training workflows.
/.well-known/mcp.json
json
{
"name": "feedmon",
"version": "1.0",
"description": "Feedmon MCP surface for fetching recent posts from configured feeds and training the matcher with feedback.",
"documentation": "/.well-known/skills.md",
"documentation_html": "/docs/skills",
"endpoints": {
"recent_posts": {
"list": {
"method": "GET",
"path": "/api/posts/recent",
"query": {
"status": "all | new (optional, default all)",
"days": "integer (optional, default 7, use 0 for all time)",
"subreddit": "string (optional, normalized subreddit name)",
"min_score": "integer (optional, minimum relevance score)"
},
"description": "Returns up to 100 recent posts from the user's configured feeds using the same filters as the /posts page.",
"response_fields": [
"id",
"reddit_id",
"subreddit",
"title",
"author",
"url",
"permalink",
"content",
"published_at",
"discovered_at",
"matched_keywords",
"relevance_score",
"status",
"feed_name",
"feed_city",
"feed_province",
"comment_count"
]
}
},
"training": {
"get_posts": {
"method": "GET",
"path": "/api/train/posts",
"description": "Returns a batch of posts to rate (JSON array). Use ?for_agent=1 to omit relevance_score; response has id, title, content, subreddit, matched_keywords (no score)."
},
"record_feedback": {
"method": "POST",
"path": "/api/train/feedback",
"content_type": "application/json",
"body": {
"post_id": "integer",
"rating": "Excellent | Good | Bad (or lowercase; Good = acceptable)"
},
"description": "Record a rating for a post. Agent/CLI interface: send Excellent, Good, or Bad. Updates keyword and subreddit weights."
},
"undo_feedback": {
"method": "POST",
"path": "/api/train/undo",
"content_type": "application/json",
"body": {
"post_id": "integer"
},
"description": "Remove feedback for a post (reverts weight updates)."
},
"get_stats": {
"method": "GET",
"path": "/api/train/stats",
"description": "Training progress stats (rated today, total, goal)."
}
}
},
"docs": {
"manifest_html": "/docs/mcp",
"skills_html": "/docs/skills",
"manifest_raw": "/.well-known/mcp.json",
"skills_raw": "/.well-known/skills.md"
},
"ui": {
"train": "/train",
"posts": "/posts"
}
}