Skip to content

Conversation

@frontegg-david
Copy link
Contributor

@frontegg-david frontegg-david commented Nov 16, 2025

Summary by CodeRabbit

  • New Features

    • Added blog section featuring articles on FrontMCP architecture and multi-client server patterns
  • Documentation

    • Reorganized navigation with dropdown-based structure and versioning support
    • Converted external documentation links to internal routes
    • Enhanced Split-By-App and authentication documentation with clarifications

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 16, 2025

Walkthrough

This pull request reorganizes the documentation governance structure and site architecture. Changes include updating CI/CD workflows to scope docs to a new hierarchy (docs/docs/ for latest, docs/v/ for archived), restructuring navigation in docs.json from flat versions to dropdown-based organization with Documentation and Blog sections, refactoring README formatting, and introducing new blog infrastructure with posts and styling.

Changes

Cohort / File(s) Change Summary
Governance & Configuration
\\.coderabbit.yaml
Expanded docs governance with new sections for apps/demo, docs/docs/, docs/v/, docs/draft/docs/, docs/blogs/, and libs/; enhanced path_filters with broader exclusions for build artifacts and tooling caches.
CI/CD Workflow
\\.github/workflows/codex-mintlify-docs.yml
Updated Codex prompt scope from docs/ to docs/docs/; reorganized docs layout guidance with unified latest docs structure, archived docs versioning, and read-only/draft constraints; updated allowed patch targets and JSON schema to reflect new doc hierarchy.
Site Configuration & Metadata
README.md, docs/docs.json, docs/updates.mdx
README: updated logo asset paths and refactored TOC formatting from asterisks to hyphens. docs.json: restructured navigation from flat versions array to dropdown-based organization (Documentation and Blog); updated asset paths; removed errors block. docs/updates.mdx: replaced external doc links with internal relative paths.
Documentation - Welcome & Getting Started
docs/docs/getting-started/welcome.mdx, docs/docs/v/0.1/getting-started/welcome.mdx, docs/docs/v/0.2/getting-started/welcome.mdx, docs/draft/docs/getting-started/welcome.mdx
Added sidebarTitle frontmatter field; updated version titles in v0.1 and v0.2 variants.
Documentation - Deployment & Servers
docs/draft/docs/deployment/local-dev-server.mdx, docs/draft/docs/servers/...
Minor formatting fix in code fence; expanded Split-By-App documentation with detailed Tip blocks explaining scope behavior, entry path routing, and per-app OAuth handling.
Blog Infrastructure
docs/blog/index.mdx, docs/blog/external-links.mdx, docs/blog/style.css, docs/snippets/card.jsx
Added new blog index with BlogCard layout, external quick links page, comprehensive CSS styling for blog cards with responsive design, and new BlogCard React component with author/date/time byline support.
Blog Content
docs/blog/11-2025/introducing-frontmcp.mdx, docs/blog/11-2025/mcp-run-out-of-socket.mdx
Added two new blog articles: one introducing FrontMCP's TypeScript-first framework and core concepts; another detailing multi-client, multi-app architecture patterns and production deployment considerations.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

  • docs/docs.json requires careful verification of the new navigation structure, nested groupings, and path migrations to ensure all internal links remain correct and versions are properly scoped.
  • .github/workflows/codex-mintlify-docs.yml contains substantial prompt/guidance text changes and patch target logic that impact documentation automation—verify that allowed modification paths and PR review rules correctly enforce the new doc hierarchy.
  • .coderabbit.yaml governance section additions need validation to ensure path filters and descriptions align with the new workflow and don't conflict with existing rules.
  • Blog post content (especially docs/blog/11-2025/mcp-run-out-of-socket.mdx) contains detailed technical guidance that should be reviewed for accuracy and consistency with the SDK behavior.

Possibly related PRs

Poem

🐇 A warren of docs now organized with care,
Dropdowns and drafts in their proper square!
From flatness to hierarchy, blog tales abound,
With cards and with styling, a beautiful compound—
The docs now run swift, like rabbits through ferns! 📚✨

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'fix(docs): reorginaize docs folder and update coderabbit config' accurately describes the main changes: reorganizing documentation folders and updating configuration files like .coderabbit.yaml and GitHub workflows.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch add-blogs

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/draft/docs/servers/server.mdx (1)

1-107: Move file to correct human-editable path: docs/draft-docs/servers/server.mdx

The file is currently in docs/draft/docs/servers/server.mdx, which contradicts configuration guidance:

  • .coderabbit.yaml (line 44) designates docs/draft-docs/** as the canonical location for human-editable drafts
  • .github/workflows/codex-mintlify-docs.yml (lines 162–164) treats docs/draft/docs/** as read-only automation territory: "You may read these for context but must not modify them"
  • The docs/draft-docs/ directory does not currently exist and must be created as part of this change

Move docs/draft/docs/servers/server.mdx to docs/draft-docs/servers/server.mdx to align with the documented governance model.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 72dd07d and 2004e23.

📒 Files selected for processing (12)
  • .coderabbit.yaml (2 hunks)
  • .github/workflows/codex-mintlify-docs.yml (4 hunks)
  • README.md (4 hunks)
  • docs/docs.json (1 hunks)
  • docs/docs/getting-started/welcome.mdx (1 hunks)
  • docs/docs/v/0.1/getting-started/welcome.mdx (1 hunks)
  • docs/docs/v/0.2/getting-started/welcome.mdx (1 hunks)
  • docs/draft/docs/deployment/local-dev-server.mdx (1 hunks)
  • docs/draft/docs/getting-started/welcome.mdx (1 hunks)
  • docs/draft/docs/servers/authentication/overview.mdx (1 hunks)
  • docs/draft/docs/servers/server.mdx (2 hunks)
  • docs/updates.mdx (3 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
docs/docs/**

⚙️ CodeRabbit configuration file

docs/docs/**: This folder contains the latest Mintlify documentation for the CURRENT minor version, using SEO-friendly paths (e.g. "docs/getting-started/welcome"). These files are generated/updated by the Codex GitHub Action, NOT manually. When reviewing a PR: - If a contributor edits files under docs/docs/** directly, ask them to revert
those changes and instead update the corresponding draft under docs/draft-docs/**.

  • Do NOT suggest manual edits here; suggest editing drafts and letting automation
    regenerate docs/docs/**.
  • The release process for a new minor is:
    1. Copy the current docs/docs/** into docs/v/{previous-minor}/** to freeze them.
    2. Update docs/docs/** based on docs/draft-docs/** and the code changes.

Files:

  • docs/docs/v/0.2/getting-started/welcome.mdx
  • docs/docs/v/0.1/getting-started/welcome.mdx
  • docs/docs/getting-started/welcome.mdx
docs/**

⚙️ CodeRabbit configuration file

docs/**: Repository documentation for the SDK, using MDX and hosted by Mintlify. See more specific rules for: - docs/docs/** (latest rendered docs, automation-only) - docs/v/** (archived versions, read-only) - docs/draft-docs/** (human-editable drafts) - docs/blogs/** (blogs, human edited) - docs/docs.json (Mintlify navigation)

Files:

  • docs/docs/v/0.2/getting-started/welcome.mdx
  • docs/draft/docs/servers/authentication/overview.mdx
  • docs/draft/docs/servers/server.mdx
  • docs/updates.mdx
  • docs/docs/v/0.1/getting-started/welcome.mdx
  • docs/draft/docs/getting-started/welcome.mdx
  • docs/draft/docs/deployment/local-dev-server.mdx
  • docs/docs/getting-started/welcome.mdx
  • docs/docs.json
docs/docs.json

⚙️ CodeRabbit configuration file

docs/docs.json: Mintlify navigation configuration. Important structure: - dropdowns[].dropdown == "Documentation":

  • Contains a "versions" array.
  • Latest version entry: "version": "vX.Y (latest)", "default": true, with
    paths like "docs/getting-started/welcome" and "updates" (NO "v/X.Y" prefix).
  • Older versions: "version": "v0.2", "version": "v0.1", etc., with paths
    like "docs/v/0.2/getting-started/welcome".
  • dropdowns[].dropdown == "Blog":
    • Contains blog groups (e.g. "blog/november-2025/introducing-frontmcp").
      Review guidelines: - Do NOT suggest editing the Blog dropdown unless the PR explicitly adds/changes blogs. - Ensure latest version uses non-versioned "docs/..." paths, and older versions
      use "docs/v/{minor}/..." paths.
  • If you see changes that try to route archived versions away from docs/v/**,
    flag that as incorrect.

Files:

  • docs/docs.json
🧬 Code graph analysis (1)
.github/workflows/codex-mintlify-docs.yml (1)
scripts/apply-doc-patches.mjs (1)
  • fss (45-125)
🔇 Additional comments (15)
docs/draft/docs/deployment/local-dev-server.mdx (1)

33-33: LGTM—minor markdown formatting fix.

Normalizing the code fence syntax is a good housekeeping change and doesn't affect rendering.

docs/draft/docs/servers/authentication/overview.mdx (1)

13-17: LGTM—helpful clarification of splitByApp behavior.

The added Tip clearly explains how scope reuse and auto-targeting work when splitByApp is enabled, improving user understanding of the auth flow.

README.md (1)

46-69: LGTM—consistent bullet formatting.

Bullet list normalization from * to - improves consistency with modern markdown conventions. No content changes.

Also applies to: 334-349

docs/draft/docs/getting-started/welcome.mdx (1)

3-3: LGTM—metadata update in the correct draft location.

Adding sidebarTitle here is the right approach. Once automation regenerates docs/docs/getting-started/welcome.mdx, this metadata will be reflected in the published docs.

docs/updates.mdx (1)

11-11: LGTM—internal routing aligned with new docs structure.

The switch from external docs links to internal paths (/docs, /docs/v/0.2/, /docs/v/0.1/) is consistent with the reorganized documentation hierarchy. Ensure these routes are registered in docs/docs.json (or your Mintlify navigation config) so they resolve correctly.

Please confirm that the internal doc paths /docs, /docs/v/0.2/, and /docs/v/0.1/ are properly configured in your Mintlify navigation file (typically docs/docs.json).

Also applies to: 35-35, 70-70

docs/docs/getting-started/welcome.mdx (1)

3-3: ⛔ This review comment is incorrect.

Verification reveals:

  • docs/draft-docs/ directory does not exist in the codebase (contradicting the claim that the draft file exists)
  • docs/docs/getting-started/welcome.mdx has no uncommitted changes in this PR (working tree clean)
  • The sidebarTitle was already present in the file before this PR

No manual edits are being made to this file, and no revert is needed. The coding guideline violation cited does not apply.

Likely an incorrect or invalid review comment.

docs/docs/v/0.2/getting-started/welcome.mdx (1)

2-3: The review comment is incorrect and should be disregarded.

The file docs/docs/v/0.2/getting-started/welcome.mdx is a frozen archived version for v0.2 documentation, not a current/latest doc subject to automation-only restrictions. Per the coding guidelines, versioned docs in docs/v/{version}/ are created as frozen snapshots and are expected to differ from the current latest docs.

Key issues with the review comment:

  • Path guidance is wrong: References non-existent docs/draft-docs/v/0.2/ directory; the actual structure is docs/draft/docs/ (unversioned)
  • Governance misapplied: The "automation-only" rule applies to docs/docs/** (current latest), not to docs/docs/v/X.Y/** (frozen versions)
  • Expected divergence: Versioned archived docs intentionally contain version-specific changes (like the "v0.2" title), which is correct

The changes are appropriate and require no action.

Likely an incorrect or invalid review comment.

.github/workflows/codex-mintlify-docs.yml (2)

350-360: Verify patch schema regex matches all allowed paths

The regex pattern on line 353 restricts patches to:

^(docs\/docs\/.+\.(md|mdx)|docs\/updates\.mdx|docs\/docs\.json|CHANGELOG\.md|README\.md|libs\/.+\/README\.md)$

Ensure this matches the paths listed in the prompt (lines 174-186). The pattern appears complete, but confirm that docs/updates.mdx is the only global release notes file and that no other docs/ paths should be allowed.


138-193: Documentation governance in Codex prompt is clear and comprehensive

The expanded sections (lines 150–193) clearly delineate doc folders, allowed/disallowed modifications, and versioning semantics. This aligns well with the coding guidelines and provides good guardrails for Codex.

.coderabbit.yaml (2)

95-100: New libs/** instruction appropriately added

The addition of SDK library governance (lines 95–100) aligns with the PR objective and ensures API changes are paired with corresponding docs/draft-docs/** updates rather than direct edits to generated docs.


102-119: Expanded path_filters are reasonable for build artifacts and lock files

The additional exclusions (.parcel-cache, .swc, lock files via glob pattern) reduce noise in reviews without affecting documentation or core library code.

docs/docs.json (4)

57-135: Navigation structure correctly implements versioning semantics

The latest version (v0.3) uses:

  • "version": "v0.3 (latest)" with "default": true
  • Non-versioned paths like "docs/getting-started/welcome", "docs/servers/server"
  • New "tag" fields on groups (e.g., "tag": "latest") for clarity ✓

This aligns with the coding guidelines and Codex workflow expectations.


138-200: Archived versions use correct path prefixes

v0.2 and v0.1 correctly use "docs/v/{minor}/..." paths (e.g., "docs/v/0.2/servers/server", "docs/v/0.1/servers/server") and are not marked as default. This prevents routing conflicts and maintains historical snapshots.

Also applies to: 203-266


269-278: New Blog dropdown is properly separated

The Blog dropdown is distinct from Documentation and does not interfere with version navigation. However, verify that the blog path "blog/november-2025/introducing-frontmcp" has a corresponding file or is planned for a separate commit.


1-280: Navigation paths are correct and consistent—no issues found

The review comment misidentifies the path mapping. All navigation references in docs/docs.json correctly map to existing files:

  • Latest version paths like "docs/getting-started/welcome" correctly map to ./docs/docs/getting-started/welcome.mdx
  • Versioned paths like "docs/v/0.2/getting-started/welcome" correctly map to ./docs/docs/v/0.2/getting-started/welcome.mdx
  • All referenced files exist in their expected locations

The repository uses ./docs/draft/docs/ for draft documentation instead of the guideline-suggested docs/draft-docs/, but this is a structural choice and does not create path inconsistencies in the navigation configuration. The navigation config is valid and all paths resolve correctly.

Likely an incorrect or invalid review comment.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
docs/snippets/card.jsx (1)

3-13: Consider extracting nested components for better performance.

The By and Title components are defined inside BlogCard, which means they're recreated on every render. While this works correctly, extracting them outside the parent component can improve performance and reusability.

Apply this diff to extract the nested components:

+const By = ({author, date}) => {
+    return <div className='blog-by text-xs font-medium text-gray-700 dark:text-gray-300 mt-4 text-right'>
+        <span className='date'>{date}</span> · <span className='author'>{author}</span>
+    </div>
+}
+
+const Title = ({children}) => {
+    return <h2 data-component-part="card-title" className='font-semibold text-base text-gray-800 dark:text-white group-hover:text-primary dark:group-hover:text-primary-light'>
+        {children}
+    </h2>
+}
+
 export const BlogCard = ({author, date, title, link, img, cta, children}) => {
-
-    const By = ({author, date}) => {
-        return <div className='blog-by text-xs font-medium text-gray-700 dark:text-gray-300 mt-4 text-right'>
-            <span className='date'>{date}</span> · <span className='author'>{author}</span>
-        </div>
-    }
-
-    const Title = ({children}) => {
-        return <h2 data-component-part="card-title" className='font-semibold text-base text-gray-800 dark:text-white group-hover:text-primary dark:group-hover:text-primary-light'>
-            {children}
-        </h2>
-    }
     return <div className='blog-card'>
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2004e23 and 77a7f5c.

📒 Files selected for processing (9)
  • docs/blog/11-2025/introducing-frontmcp.mdx (1 hunks)
  • docs/blog/external-links.mdx (1 hunks)
  • docs/blog/external-links/docs.mdx (1 hunks)
  • docs/blog/external-links/github.mdx (1 hunks)
  • docs/blog/external-links/updates.mdx (1 hunks)
  • docs/blog/index.mdx (1 hunks)
  • docs/blog/style.css (1 hunks)
  • docs/docs.json (2 hunks)
  • docs/snippets/card.jsx (1 hunks)
✅ Files skipped from review due to trivial changes (4)
  • docs/blog/external-links/github.mdx
  • docs/blog/external-links/updates.mdx
  • docs/blog/index.mdx
  • docs/blog/external-links/docs.mdx
🧰 Additional context used
📓 Path-based instructions (2)
docs/**

⚙️ CodeRabbit configuration file

docs/**: Repository documentation for the SDK, using MDX and hosted by Mintlify. See more specific rules for: - docs/docs/** (latest rendered docs, automation-only) - docs/v/** (archived versions, read-only) - docs/draft-docs/** (human-editable drafts) - docs/blogs/** (blogs, human edited) - docs/docs.json (Mintlify navigation)

Files:

  • docs/snippets/card.jsx
  • docs/blog/style.css
  • docs/blog/11-2025/introducing-frontmcp.mdx
  • docs/blog/external-links.mdx
  • docs/docs.json
docs/docs.json

⚙️ CodeRabbit configuration file

docs/docs.json: Mintlify navigation configuration. Important structure: - dropdowns[].dropdown == "Documentation":

  • Contains a "versions" array.
  • Latest version entry: "version": "vX.Y (latest)", "default": true, with
    paths like "docs/getting-started/welcome" and "updates" (NO "v/X.Y" prefix).
  • Older versions: "version": "v0.2", "version": "v0.1", etc., with paths
    like "docs/v/0.2/getting-started/welcome".
  • dropdowns[].dropdown == "Blog":
    • Contains blog groups (e.g. "blog/november-2025/introducing-frontmcp").
      Review guidelines: - Do NOT suggest editing the Blog dropdown unless the PR explicitly adds/changes blogs. - Ensure latest version uses non-versioned "docs/..." paths, and older versions
      use "docs/v/{minor}/..." paths.
  • If you see changes that try to route archived versions away from docs/v/**,
    flag that as incorrect.

Files:

  • docs/docs.json
🪛 LanguageTool
docs/blog/external-links.mdx

[uncategorized] ~13-~13: The official name of this software platform is spelled with a capital “H”.
Context: ...ithub.com/agentfront/frontmcp"} title={"Github Repo"} horizontal arrow icon='github'> ...

(GITHUB)


[uncategorized] ~13-~13: The official name of this software platform is spelled with a capital “H”.
Context: ...={"Github Repo"} horizontal arrow icon='github'> FrontMCP source code on Github </...

(GITHUB)


[uncategorized] ~14-~14: The official name of this software platform is spelled with a capital “H”.
Context: ...n='github'> FrontMCP source code on Github <Card href={"/updates"} title={...

(GITHUB)

🔇 Additional comments (6)
docs/blog/style.css (1)

1-61: LGTM!

The blog card styling is well-structured with proper responsive design for mobile viewports. The use of data-component-part attributes provides clean separation between styling and markup.

docs/blog/external-links.mdx (1)

10-21: LGTM!

The Quick Links structure provides clear navigation to key FrontMCP resources. The mix of internal and external links aligns well with the new documentation structure.

docs/blog/11-2025/introducing-frontmcp.mdx (1)

1-332: LGTM!

This comprehensive blog post effectively introduces FrontMCP with clear structure, practical examples, and helpful navigation. The internal link paths align correctly with the new documentation structure established in this PR.

docs/docs.json (2)

57-267: LGTM! Navigation structure follows coding guidelines correctly.

The navigation restructuring from a flat versions array to a tiered dropdowns system is well-executed:

  • Latest version (v0.3) correctly uses non-versioned docs/... paths
  • Older versions (v0.2, v0.1) correctly use versioned docs/v/{minor}/... paths
  • Consistent structure across all version entries
  • Proper use of the default: true flag for the latest version

This aligns perfectly with the coding guidelines for Mintlify navigation configuration.

Based on coding guidelines


268-286: LGTM! Blog dropdown structure is appropriate.

The new Blog dropdown with November 2025 content aligns with the blog files added in this PR (introducing-frontmcp.mdx, external-links.mdx, etc.). The organization into General and dated groups provides clear navigation for blog content.

docs/snippets/card.jsx (1)

18-18: Unable to locate Card component definition for verification.

The Card component is used in docs/snippets/card.jsx but:

  1. Missing import: The file contains no import statement for Card
  2. No definition found: Searching the entire codebase yields no Card component definition

Without access to the Card component definition, the arrow prop type cannot be verified. The file appears to be incomplete example code for the Mintlify documentation site.

Action required: Confirm where Card is imported from and verify its prop type signature to determine if arrow should be "true" (string) or true (boolean).

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (1)
docs/blog/external-links.mdx (1)

13-14: Correct the GitHub capitalization in link text.

The official brand name uses a capital "H": "GitHub" not "Github".

Apply this diff to fix the capitalization:

-    FrontMCP source code on Github
+    FrontMCP source code on GitHub
🧹 Nitpick comments (1)
docs/blog/11-2025/mcp-run-out-of-socket.mdx (1)

28-29: Consider varying sentence beginnings for prose flow (optional).

LanguageTool notes suggest some repeated sentence structures. For example, lines 28–29 and 67–68 repeat opening phrases. While the current version is clear, adding variety would improve readability:

  • Lines 28–29: The numbered list structure repeats "You"; consider rewording slightly for flow.
  • Lines 67–68: The bullet list repeats "Maybe"; consider phrasing differently (e.g., "Perhaps," "One might think," etc.).

This is a nice-to-have stylistic refinement for a future pass.

Also applies to: 67-68, 127-127

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 77a7f5c and 08386c6.

⛔ Files ignored due to path filters (15)
  • docs/assets/banners/frontmcp-vs-standardmcp.dark.png is excluded by !**/*.png
  • docs/assets/banners/frontmcp-vs-standardmcp.light.png is excluded by !**/*.png
  • docs/assets/banners/mcp-run-out-of-socket.svg is excluded by !**/*.svg, !**/*.svg
  • docs/assets/logo/banner.dark.png is excluded by !**/*.png
  • docs/assets/logo/banner.light.png is excluded by !**/*.png
  • docs/assets/logo/favicon-32x32.png is excluded by !**/*.png
  • docs/assets/logo/favicon.ico is excluded by !**/*.ico
  • docs/assets/logo/frontmcp.dark.png is excluded by !**/*.png
  • docs/assets/logo/frontmcp.dark.svg is excluded by !**/*.svg, !**/*.svg
  • docs/assets/logo/frontmcp.light.png is excluded by !**/*.png
  • docs/assets/logo/frontmcp.light.svg is excluded by !**/*.svg, !**/*.svg
  • docs/assets/logo/logo.dark.png is excluded by !**/*.png
  • docs/assets/logo/logo.dark.svg is excluded by !**/*.svg, !**/*.svg
  • docs/assets/logo/logo.light.png is excluded by !**/*.png
  • docs/assets/logo/logo.light.svg is excluded by !**/*.svg, !**/*.svg
📒 Files selected for processing (9)
  • .coderabbit.yaml (2 hunks)
  • README.md (5 hunks)
  • docs/blog/11-2025/introducing-frontmcp.mdx (1 hunks)
  • docs/blog/11-2025/mcp-run-out-of-socket.mdx (1 hunks)
  • docs/blog/external-links.mdx (1 hunks)
  • docs/blog/index.mdx (1 hunks)
  • docs/blog/style.css (1 hunks)
  • docs/docs.json (3 hunks)
  • docs/snippets/card.jsx (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (4)
  • docs/blog/11-2025/introducing-frontmcp.mdx
  • docs/snippets/card.jsx
  • docs/blog/style.css
  • docs/blog/index.mdx
🧰 Additional context used
📓 Path-based instructions (2)
docs/**

⚙️ CodeRabbit configuration file

docs/**: Repository documentation for the SDK, using MDX and hosted by Mintlify. See more specific rules for: - docs/docs/** (latest rendered docs, automation-only) - docs/v/** (archived versions, read-only) - docs/draft/docs/** (human-editable drafts) - docs/blogs/** (blogs, human edited) - docs/docs.json (Mintlify navigation)

Files:

  • docs/blog/11-2025/mcp-run-out-of-socket.mdx
  • docs/docs.json
  • docs/blog/external-links.mdx
docs/docs.json

⚙️ CodeRabbit configuration file

docs/docs.json: Mintlify navigation configuration. Important structure: - dropdowns[].dropdown == "Documentation":

  • Contains a "versions" array.
  • Latest version entry: "version": "vX.Y (latest)", "default": true, with
    paths like "docs/getting-started/welcome" and "updates" (NO "v/X.Y" prefix).
  • Older versions: "version": "v0.2", "version": "v0.1", etc., with paths
    like "docs/v/0.2/getting-started/welcome".
  • dropdowns[].dropdown == "Blog":
    • Contains blog groups (e.g. "blog/november-2025/introducing-frontmcp").
      Review guidelines: - Do NOT suggest editing the Blog dropdown unless the PR explicitly adds/changes blogs. - Ensure latest version uses non-versioned "docs/..." paths, and older versions
      use "docs/v/{minor}/..." paths.
  • If you see changes that try to route archived versions away from docs/v/**,
    flag that as incorrect.

Files:

  • docs/docs.json
🧠 Learnings (2)
📓 Common learnings
Learnt from: frontegg-david
Repo: agentfront/frontmcp PR: 50
File: docs/docs/v/0.1/getting-started/welcome.mdx:2-3
Timestamp: 2025-11-16T22:47:05.113Z
Learning: In the agentfront/frontmcp repository, the docs/docs/v/** directory governance rule prohibiting manual edits applies to already-frozen releases, but does not preclude initial setup and bootstrap commits that establish the versioned docs structure.
📚 Learning: 2025-11-16T22:47:05.113Z
Learnt from: frontegg-david
Repo: agentfront/frontmcp PR: 50
File: docs/docs/v/0.1/getting-started/welcome.mdx:2-3
Timestamp: 2025-11-16T22:47:05.113Z
Learning: In the agentfront/frontmcp repository, the docs/docs/v/** directory governance rule prohibiting manual edits applies to already-frozen releases, but does not preclude initial setup and bootstrap commits that establish the versioned docs structure.

Applied to files:

  • .coderabbit.yaml
🪛 LanguageTool
docs/blog/11-2025/mcp-run-out-of-socket.mdx

[style] ~28-~28: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... the example that spins up a server. 3. You attach a transport (stdio, HTTP, SSE, o...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~29-~29: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...dio, HTTP, SSE, or Streamable HTTP). 4. You connect an MCP client, see your tools, ...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[style] ~67-~67: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...rt: - “Maybe stdio is the problem.” - “Maybe SSE is the problem.” - “Maybe I should ...

(REP_MAYBE)


[style] ~68-~68: You have already used this phrasing in nearby sentences. Consider replacing it to add variety to your writing.
Context: ...blem.” - “Maybe SSE is the problem.” - “Maybe I should just switch to Streamable HTTP...

(REP_MAYBE)


[style] ~70-~70: Consider a different adjective to strengthen your wording.
Context: ...l be fine.” Transport matters, but the deeper issue is independent of the wire: - If...

(DEEP_PROFOUND)


[style] ~127-~127: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...with separate auth and base paths. - Sometimes expose an app as a standalone MCP serve...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)


[grammar] ~329-~329: In American English, the usual verb to go with ‘REST’ is “take”.
Context: ...ork is: > “This is cool, but I already have a REST API. Do I really have to rewrite...

(HAVE_A_BATH)

docs/blog/external-links.mdx

[uncategorized] ~13-~13: The official name of this software platform is spelled with a capital “H”.
Context: ...={"GitHub Repo"} horizontal arrow icon='github'> FrontMCP source code on Github </...

(GITHUB)


[uncategorized] ~14-~14: The official name of this software platform is spelled with a capital “H”.
Context: ...n='github'> FrontMCP source code on Github <Card href={"/updates"} title={...

(GITHUB)

🔇 Additional comments (11)
README.md (3)

4-6: Asset path reorganization looks good.

The logo paths have been consistently updated from docs/images/ to docs/assets/logo/, aligning with the new documentation asset structure.


46-69: TOC refactoring improves consistency.

The Table of Contents has been reformatted to use a consistent hyphen-based bullet style with clear indentation hierarchy. The reorganization aligns with the updated documentation structure.


385-397: Verify that reference link targets are accurate.

The reference links at the end of the file point to docs.agentfront.dev/0.3/ paths. Ensure these URLs are valid and reflect the latest documentation version currently being deployed.

docs/blog/11-2025/mcp-run-out-of-socket.mdx (1)

1-449: Comprehensive blog post on multi-agent MCP architecture.

This is a well-structured and informative post that clearly explains the problem statement, FrontMCP's approach, and practical patterns. The content flows logically from problem → solution → examples → migration playbook.

.coderabbit.yaml (3)

6-10: Clear governance for demo directory.

The expanded description for apps/demo/** is helpful for reviewers, emphasizing its role as a reference for SDK usage examples.


12-101: Comprehensive and well-organized docs governance structure.

The DOCS HIERARCHY & WORKFLOW section provides clear guidance on each documentation area:

  • docs/docs/ correctly marked as automation-only (latest rendered docs)
  • docs/v/ correctly marked as read-only (frozen archived versions)
  • docs/draft/docs/ correctly identified as human-editable drafts
  • docs/blogs/ correctly identified as human-edited content
  • docs/docs.json guidance aligns with coding guidelines for versioning strategy
  • libs/ newly documented for SDK libraries with API/docs alignment requirement

This resolves the earlier path mismatch issue. Based on learnings, the initial bootstrap setup for versioned docs structure is properly accommodated.


102-118: Path filters are comprehensive and well-maintained.

The exclusion patterns cover build artifacts, cache directories, node_modules, lock files, and minified assets. This appropriately focuses reviews on meaningful source code changes.

docs/docs.json (4)

10-10: Asset paths correctly updated.

Logo and favicon references have been updated from docs/images/ to docs/assets/logo/, maintaining consistency across the project.

Also applies to: 12-13


57-267: Navigation restructure correctly implements versioning strategy.

The hierarchical dropdown model with three versions is well-organized:

  • v0.3 (latest): Uses non-versioned docs/... paths with "default": true
  • v0.2 & v0.1: Use versioned docs/v/{minor}/... paths as archived versions ✓

Each version includes nested subgroups (Core Components, Authentication, Extensibility Components) that provide clear navigation hierarchy. Tags and group organization align with coding guidelines for docs governance.


268-287: Blog dropdown properly integrated.

The Blog dropdown correctly includes:

  • General group with index and external-links pages
  • November 2025 group with blog posts

This structure is appropriate for the PR's blog publication changes and follows the expected organization pattern.


283-283: Verify blog post file path exists.

The navigation references blog/11-2025/introducing-frontmcp at line 283. Confirm this file exists in the repository; if not, it should either be created or removed from the navigation.

@frontegg-david frontegg-david merged commit bb6bfa8 into main Nov 16, 2025
3 checks passed
@frontegg-david frontegg-david deleted the add-blogs branch November 16, 2025 22:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants