Skip to content

[I Made This]: Local MCP Document Search Server #3846

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
1 task done
walmsles opened this issue Apr 22, 2025 · 5 comments · Fixed by #3876
Closed
1 task done

[I Made This]: Local MCP Document Search Server #3846

walmsles opened this issue Apr 22, 2025 · 5 comments · Fixed by #3876
Assignees
Labels
community-content Community content to feature in the documentation completed This item is complete and has been merged/shipped

Comments

@walmsles
Copy link

Link to your material

https://github.com/serverless-dna/powertools-mcp

Description

This project implements an MCP server that enables Large Language Models (LLMs) to search through AWS Lambda Powertools documentation.

The server accesses the live documentation search_index.json data and re-constructs a local search index using lunr.js. This provides an identical search experience for AI Agents and returns the exact same results as a person would get on the website. With the index being local searches are super fast and the index is cached for the life of the server to save rebuilding used indexes. Since the MCP Server uses real search data it is capable of working for any Powertools document site so naturally supports ALL the runtimes.

It provides 2 tools for AI:

search_docs: For searching a mkdocs index (first time use will create the session cached index)

fetch_doc_page: A simple webscraper that fetches a Powertools document URL page and returns the main content div as markdown for the AI to consume. Only pages from Powertools document sites can be loaded by this tool (all other domains are rejected).

I hope you find this useful!

Preferred contact

https://www.linkedin.com/in/walmsles/

(Optional) Social Network

No response

(Optional) Additional notes

I have released this as the "Unofficial Powertools MCP Server" because its not endorsed by AWS and I want to respect that the AWS Powertools team should control the projects.

I am more than happy to donate this to the Powertools team as an official project starting point if there is interest.

Other important note about this: I am researching and plan to contact mkdocs to see if they are interested in me creating a core project that baselines the mkdocs MCP Server and officially leverage their index code from mkdocs (right now it is reverse engineered because the search_index.json is custom for the way mkdocs sets up its search engine configuration via the plugin.

Acknowledgment

  • I understand this content may be removed from Powertools for AWS Lambda (TypeScript) documentation if it doesn't conform with the Code of Conduct
@walmsles walmsles added the community-content Community content to feature in the documentation label Apr 22, 2025
@dreamorosi
Copy link
Contributor

Hey @walmsles thank you so much for building this and submitting it.

I'm traveling this week so it might take a little while longer to merge it.

Before merging I'd like to test it and see how if we can do anything more, which you touched upon in the issue.

Give me just a few days

@walmsles
Copy link
Author

No problem, it's open source and takes time.

I reached out to mkdocs and they are not considering this yet since they are rebuilding the core right now including search.

@dreamorosi
Copy link
Contributor

Thanks for publishing this video, it helped a lot.

I am adding the server to the docs.

@github-project-automation github-project-automation bot moved this from Working on it to Coming soon in Powertools for AWS Lambda (TypeScript) May 1, 2025
Copy link
Contributor

github-actions bot commented May 1, 2025

⚠️ COMMENT VISIBILITY WARNING ⚠️

This issue is now closed. Please be mindful that future comments are hard for our team to see.

If you need more assistance, please either tag a team member or open a new issue that references this one.

If you wish to keep having a conversation with other community members under this issue feel free to do so.

@github-actions github-actions bot added the pending-release This item has been merged and will be released soon label May 1, 2025
Copy link
Contributor

github-actions bot commented May 6, 2025

This is now released under v2.19.1 version!

@github-actions github-actions bot added completed This item is complete and has been merged/shipped and removed pending-release This item has been merged and will be released soon labels May 6, 2025
@dreamorosi dreamorosi moved this from Coming soon to Shipped in Powertools for AWS Lambda (TypeScript) May 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
community-content Community content to feature in the documentation completed This item is complete and has been merged/shipped
Projects
Development

Successfully merging a pull request may close this issue.

2 participants