io.github.AntoineGou/ssrs2

SSRS2

Markdown to editable PowerPoint, Word, PDF; checks, edits and previews RDLC/RDL reports.

Endpointhttps://ssrs2.net/mcp (streamable-http)
Registry version1.6.0
Now6 tools · grade A (90) · pin ts_0ee8a4a003a4c0693d1dd45f9fc4f670 · protocol 2025-06-18
First / last listed2026-10-25 03:51 UTC / 2026-10-25 03:51 UTC
Grade over time2026-10-25: A (90), 6 tools

Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.

Timeline

First listing · 2026-10-25 03:51 UTC
6 tools, grade A (90)

Tools: convert_report compare_reports render_preview describe_report edit_report validate_report

Current tools (6)

convert_reportConverts a report (RDL or RDLC) or Markdown (a document, or slides) with SSRS2 (Report Viewer's rules) to pptx (PowerPoint's own text boxes, tables and pictures, a slide per page: a Markdown deck becomes a deck), pdf, docx, xlsx, mhtml, tiff, png (the first page), csv or xml. It is checked first, as validate_report checks it: with errors nothing is written. Returns validate_report's answer and wri
params: rdlc, markdown, pictures, format, name, sampleData, parameters, culture, help
compare_reportsGroups report definitions (RDL or RDLC) by structure, to plan one change across many: a group's reports have the same items, datasets, parameters and code modules and differ only in places, texts and looks, so one set of operations naming their items changes them alike. Returns groups, the largest first: structure (edit_report's structure), roles (what role:signature and the like name there), diff
params: reports*, detail
render_previewRenders a report definition (RDL or RDLC) or Markdown (a document, or slides: a page each) with SSRS2, the Report Viewer engine, and returns its pages as PNG, as a PDF of it would show them: a JSON summary first (what validate_report answers, no need to validate first; madeUpRows; conversion for Markdown, what it approximated at its lines; text, what the pages print, page by page in reading order,
params: rdlc, markdown, pictures, sampleData, parameters, pages, firstPage, dpi, culture, sheet, madeUpRows, help
describe_reportOutlines a report definition (RDL or RDLC) to plan a change: its page, datasets and fields, parameters, and every item top to bottom with its kind, place and size in cm, what it shows and does (hidden, toggled, page breaks), and its role (title, table, totals, declaration, signature...), which role:signature and the like name in edit_report and validate_report whatever the report calls the item. R
params: rdlc*, item, detail, part
edit_reportChanges a report definition (RDL, RDLC) given as its XML by operations (the SSRS2 designer's own), all or none. The text is patched (the rest as it was), then checked: its new problems and pages said. The answer's rdlc is the changed report (past 200 KB, url and curl: a download within ten minutes). Operations ("op"): dataset, parameter, page, header, footer, code, textbox, table, matrix, list, ch
params: rdlc, operations, edits, pictures, dryRun, check, rewrite, baseVersion, sampleData, parameters, keepPages, maxPages, fit, variants, rowCounts, detail, summary, help
validate_reportChecks a report definition (RDL or RDLC) or Markdown with SSRS2's engine (Report Viewer's rules): XML, schema, every expression compiled, then a run with rows through every page. Returns ok, a summary and diagnostics (code, severity, item, property, expression, line, message, hint); atRunTime counts what failed as it ran (#Error cells). Call it after each change until ok is true and atRunTime abse
params: rdlc, markdown, pictures, sampleData, parameters, render, culture, baselineRdlc, layout, expect, variants, rowCounts, madeUpRows, help

Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.