Add European Parliament MCP Server project pages (main, features, docs)#1068
Add European Parliament MCP Server project pages (main, features, docs)#1068
Conversation
…s, docs) Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
|
@copilot Verify Pull Request / verifypr (push) |
…house report files Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
The CI failure was caused by the html5validator scanning all HTML files including the auto-generated Lighthouse/ZAP report files in Fixed in dd1e85e by adding |
There was a problem hiding this comment.
Pull request overview
This PR adds three new HTML pages for the European Parliament MCP Server project to the Hack23 homepage, following the established pattern used for other Hack23 projects (CIA Compliance Manager, Black Trigram). The European Parliament MCP Server is a TypeScript/Node.js Model Context Protocol implementation that provides AI assistants with structured access to European Parliament open datasets, achieving SLSA Level 3 security and 80%+ test coverage.
Changes:
- Added main project page (
european-parliament-mcp.html) with hero section, key features, MCP tools overview, data sources, technology stack, security badges, and use cases - Added features page (
european-parliament-mcp-features.html) with detailed descriptions of 9 MCP tools, security features, ISMS compliance, and data model overview - Added documentation hub page (
european-parliament-mcp-docs.html) with 26 comprehensive documentation cards linking to architecture, security, testing, business continuity, threat modeling, and CRA assessment documentation - Fixed CI workflow to exclude auto-generated docs/ directory files from HTML validation using
blacklist: docs/option
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
european-parliament-mcp.html |
Main project overview page with breadcrumb navigation, hero section, 9 MCP tools cards, technology stack, security badges, related projects, and CTA section |
european-parliament-mcp-features.html |
Detailed features page with platform overview, 9 MCP tool descriptions, security features (rate limiting, Zod validation, security headers, audit logging), and ISMS compliance badges |
european-parliament-mcp-docs.html |
Documentation hub with 26 ISMS documentation cards covering architecture (current/future), behavior, processes, security, business analysis, DevOps, testing, API docs, business continuity, threat modeling, and CRA assessment |
.github/workflows/pullrequest.yml |
Added blacklist: docs/ to html5validator configuration to exclude auto-generated Lighthouse/ZAP report files from HTML validation |
european-parliament-mcp-docs.html
Outdated
| <a href="/">Home</a> | ||
| </li> | ||
| <li class="breadcrumb-item"> | ||
| <a href="/european-parliament-mcp.html">European Parliament MCP Server</a> |
There was a problem hiding this comment.
Breadcrumb links use absolute paths (starting with "/") which is inconsistent with the pattern used in other project pages. Both european-parliament-mcp.html and compliance-manager.html use relative paths (e.g., "index.html"). Using absolute paths here breaks consistency and could cause issues with deployment configurations.
Change "/" to "index.html" on line 138 and "/european-parliament-mcp.html" to "european-parliament-mcp.html" on line 141 to match the repository's breadcrumb pattern.
| <a href="/">Home</a> | |
| </li> | |
| <li class="breadcrumb-item"> | |
| <a href="/european-parliament-mcp.html">European Parliament MCP Server</a> | |
| <a href="index.html">Home</a> | |
| </li> | |
| <li class="breadcrumb-item"> | |
| <a href="european-parliament-mcp.html">European Parliament MCP Server</a> |
| "datePublished": "2025-01-01", | ||
| "dateModified": "2026-02-01" |
There was a problem hiding this comment.
The datePublished value "2025-01-01" and dateModified value "2026-02-01" in the Schema.org structured data. While datePublished is acceptable (project was created in January 2025), the dateModified of "2026-02-01" represents a date in the past relative to today (February 19, 2026). Consider updating dateModified to "2026-02-19" or removing it entirely to let it be automatically derived.
| <a href="/">Home</a> | ||
| </li> | ||
| <li class="breadcrumb-item"> | ||
| <a href="/european-parliament-mcp.html">European Parliament MCP Server</a> |
There was a problem hiding this comment.
Breadcrumb links use absolute paths (starting with "/") which is inconsistent with the pattern used in other project pages. The main european-parliament-mcp.html page and compliance-manager.html both use relative paths (e.g., "index.html", "projects.html"). Using absolute paths here breaks consistency and could cause issues with deployment configurations.
Change "/" to "index.html" on line 174 and "/european-parliament-mcp.html" to "european-parliament-mcp.html" on line 177 to match the repository's breadcrumb pattern.
| <a href="/">Home</a> | |
| </li> | |
| <li class="breadcrumb-item"> | |
| <a href="/european-parliament-mcp.html">European Parliament MCP Server</a> | |
| <a href="index.html">Home</a> | |
| </li> | |
| <li class="breadcrumb-item"> | |
| <a href="european-parliament-mcp.html">European Parliament MCP Server</a> |
|
@copilot apply changes based on the comments in this thread |
…s/docs pages Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
Applied in 4a71c2d:
|
|
Verify Pull Request / verifypr (push) |
…rectory from HTML validation Co-authored-by: pethers <1726836+pethers@users.noreply.github.com>
|
Root cause found: html5validator checks blacklist values against path components (directory name parts), not substring matches. Fixed in e11e496: |
|



european-parliament-mcp.html(main page, followingcompliance-manager.htmlpattern)european-parliament-mcp-features.html(features page, followingcia-compliance-manager-features.htmlpattern)european-parliament-mcp-docs.html(docs page with all 27 ISMS documentation cards, followingcia-compliance-manager-docs.htmlpattern)blacklist: docs(without trailing slash) to html5validator inpullrequest.yml— html5validator matches against path components sodocs/(with slash) never matches thedocscomponent, whiledocs(without slash) correctly excludes the entire directorydateModifiedto2026-02-19in features page schema.orgOriginal prompt
This section details on the original issue you should resolve
<issue_title>Add European Parliament MCP Server project pages (main, features, docs) with full ISMS documentation links</issue_title>
<issue_description>## 🎯 Objective
Create three new HTML pages for the European Parliament MCP Server project following the same pattern as existing Hack23 project pages (
black-trigram.html,compliance-manager.html,cia-project.html), including all ISMS documentation links.📋 Background
The European Parliament MCP Server is a new Hack23 project that implements the Model Context Protocol (MCP) to provide AI assistants with structured access to European Parliament open datasets. It achieves SLSA Level 3, maintains 80%+ test coverage, and is fully ISMS-compliant.
This project needs homepage presence with three pages:
european-parliament-mcp.html— Main project page (overview, features, links)european-parliament-mcp-features.html— Detailed feature descriptionseuropean-parliament-mcp-docs.html— Architecture & ISMS documentation hub📊 Current State
✅ Acceptance Criteria
european-parliament-mcp.htmlcreated followingcompliance-manager.htmlpatterneuropean-parliament-mcp-features.htmlcreated followingcia-compliance-manager-features.htmlpatterneuropean-parliament-mcp-docs.htmlcreated followingcia-compliance-manager-docs.htmlpattern with ALL documentation links below<head>meta tags (description, keywords, OG, hreflang, canonical, schema.org)styles.csswithout modification🛠️ Implementation Guidance
Files to Create
european-parliament-mcp.html— Copy structure fromcompliance-manager.html:european-parliament-mcp-features.html— Copy structure fromcia-compliance-manager-features.html:get_meps,get_plenary_sessions,get_voting_records,search_documents,get_committee_info,get_parliamentary_questions,analyze_voting_patterns,track_legislation,generate_reporteuropean-parliament-mcp-docs.html— Copy structure fromcia-compliance-manager-docs.htmlwith these doc links:Documentation Cards for
european-parliament-mcp-docs.htmlAll links follow pattern
https://github.com/Hack23/European-Parliament-MCP-Server/blob/main/:ARCHITECTURE.mdFUTURE_ARCHITECTURE.mdSTATEDIAGRAM.mdFUTURE_STATEDIAGRAM.mdFLOWCHART.mdFUTURE_FLOWCHART.mdSECURITY_ARCHITECTURE.mdFUTURE_SECURITY_ARCHITECTURE.mdSWOT.mdFUTURE_SWOT.md.github/WORKFLOWS.mdFUTURE_WORKFLOWS.mdMINDMAP.mdFUTURE_MINDMAP.mdDATA_MODEL.mdFUTURE_DATA_MODEL.mdhttps://hack23.github.io/European-Parliament-MCP-Server/docs/test-results// Test Plan:docs/UnitTestPlan.mdhttps://hack23.github.io/European-Parliament-MCP-Server/docs/coverage/https://hack23.github.io/European-Parliament-MCP-Server/docs/e2e-results/PERFORMANCE_GUIDE.mdhttps://hack23.github.io/European-Parliament-MCP-Server/docs/api/BCPPlan.mdEnd-of-Life-Strategy.md💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.