mirror of
https://github.com/stack-auth/stack.git
synced 2026-06-13 21:01:21 +08:00
|
Some checks failed
all-good: Did all the other checks pass? / all-good (push) Has been cancelled
Ensure Prisma migrations are in sync with the schema / check_prisma_migrations (22.x) (push) Has been cancelled
Docker Server Build and Push / Docker Build and Push Server (push) Has been cancelled
Docker Server Test / docker (push) Has been cancelled
Runs E2E API Tests / build (22.x) (push) Has been cancelled
Runs E2E API Tests with custom port prefix / build (22.x) (push) Has been cancelled
Runs E2E API Tests with external source of truth / build (22.x) (push) Has been cancelled
Lint & build / lint_and_build (latest) (push) Has been cancelled
Dev Environment Test With Custom Base Port / restart-dev-and-test-with-custom-base-port (push) Has been cancelled
Dev Environment Test / restart-dev-and-test (push) Has been cancelled
Run setup tests / setup-tests (push) Has been cancelled
TOC Generator / TOC Generator (push) Has been cancelled
<!-- Make sure you've read the CONTRIBUTING.md guidelines: https://github.com/stack-auth/stack-auth/blob/dev/CONTRIBUTING.md --> Enhances the search functionality to now use the MCP server. Now handles API endpoints and webhooks. Now looks at what platform the user has selected, and searches based on that. User can choose to filter differently if needed. <img width="686" height="608" alt="image" src="https://github.com/user-attachments/assets/641c9bd2-60d2-44b3-86ca-a4506257b430" /> <!-- RECURSEML_SUMMARY:START --> ## High-level PR Summary This PR enhances the search functionality for Stack Auth documentation by integrating it with their MCP (Model Control Plane) server. The implementation replaces the previous client-side search algorithm with a server-side approach that leverages the MCP's search capabilities. The changes affect three main files: the MCP handler that now includes a new `search_docs` tool, the search route handler that now forwards queries to the MCP server instead of performing local searches, and the search dialog UI that has been updated to better handle platform-specific filtering and API documentation. The new implementation provides more relevant search results and automatically filters based on the user's current platform context, while allowing users to customize their search filters as needed. ⏱️ Estimated Review Time: 30-90 minutes <details> <summary>💡 Review Order Suggestion</summary> | Order | File Path | |-------|-----------| | 1 | `docs/src/app/api/internal/[transport]/route.ts` | | 2 | `docs/src/app/api/search/route.ts` | | 3 | `docs/src/components/layout/custom-search-dialog.tsx` | </details> <!-- RECURSEML_SUMMARY:END --> <!-- ELLIPSIS_HIDDEN --> ---- > [!IMPORTANT] > Enhances search by integrating with MCP server, updating UI for platform-specific filtering, and improving result presentation. > > - **Search Functionality**: > - Integrates search with MCP server in `route.ts` files, replacing client-side search. > - Supports API and platform-specific results, filtering out admin API endpoints. > - Sorts results by platform priority. > - **UI Updates**: > - Updates `custom-search-dialog.tsx` to support platform-specific filtering and API results. > - Adds platform badges and icons for different result types. > - Auto-detects platform from URL and adjusts search filters accordingly. > - **Miscellaneous**: > - Adds new helper functions for platform extraction and MCP server communication. > - Improves error handling and logging for search operations. > > <sup>This description was created by </sup>[<img alt="Ellipsis" src="https://img.shields.io/badge/Ellipsis-blue?color=175173">](https://www.ellipsis.dev?ref=stack-auth%2Fstack-auth&utm_source=github&utm_medium=referral)<sup> for |
||
|---|---|---|
| .. | ||
| code-examples | ||
| content | ||
| lib | ||
| public | ||
| scripts | ||
| src | ||
| templates | ||
| templates-api | ||
| templates-python | ||
| .env.development | ||
| .eslintrc.json | ||
| .gitignore | ||
| CHANGELOG.md | ||
| cli.json | ||
| next.config.mjs | ||
| package.json | ||
| postcss.config.mjs | ||
| README.md | ||
| source.config.ts | ||
| tsconfig.json | ||
stack-docs
This is a Next.js application generated with Create Fumadocs.
Run development server:
npm run dev
# or
pnpm dev
# or
yarn dev
Open http://localhost:3000 with your browser to see the result.
Explore
In the project, you can see:
lib/source.ts: Code for content source adapter,loader()provides the interface to access your content.app/layout.config.tsx: Shared options for layouts, optional but preferred to keep.
| Route | Description |
|---|---|
app/(home) |
The route group for your landing page and other pages. |
app/docs |
The documentation layout and pages. |
app/api |
The documentation for API pages. |
app/api/search/route.ts |
The Route Handler for search. |
Fumadocs MDX
A source.config.ts config file has been included, you can customise different options like frontmatter schema.
Read the Introduction for further details.
Learn More
To learn more about Next.js and Fumadocs, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
- Fumadocs - learn about Fumadocs