- add the `--mcp-transport` option - prefix the MCP env. variable with `MSF_` - move the code under `lib/msf/core/mcp/` - move specs under `spec/lib/msf/core/mcp/` - change the namespace from `MsfMcp` to `Msf::RPC` - update the `lib/msf_autoload.rb` to exclude the mcp-related files - add missing validation for the `mcp`, `rate_limit and `logging` sections in the config file - remove duplicate error exception classes - fix an error in the transformers related to the `created_at` field - fix a small issue in the input validator when regex are used - update the way error is reported for MCP Tools to be compatible with the changes in the new `mcp` gem - update and add specs
Metasploit docs site
This folder maintains the docs for https://docs.metasploit.com/ and https://github.com/rapid7/metasploit-framework/wiki
Architecture
This section explains how the documentation site is generated and deployed.
How it works:
build.rb- The main entry point for generating the docs site from the old Github Wiki format files withinmetasploit-framework.wiki/navigation.rb- Stores the mapping ofmetasploit-framework.wikifiles to the website's navigational structuremetasploit-framework.wiki/- The raw markdown documentation files. Modify these files when updating the site. These files originally came from https://github.com/rapid7/metasploit-framework/wikimetasploit-framework.wiki.old/- A separate clone of https://github.com/rapid7/metasploit-framework/wiki
Behind the scenes, these docs are built and deployed to https://docs.metasploit.com/
Adding pages
You can modify existing documentation files within metasploit-framework.wiki/ with an editor of your choice and send a pull request.
To add a new page, modify navigation.rb. Full details are found beside the NAVIGATION_CONFIG constant.
Adding links
For linking to other docs the Github markdown syntax [[link text|relative_path_to_docs]] is used. Behind the scenes these
links will be verified at build time to ensure there's no 404 links.
Note: It is also possible to use the syntax [[link text|relative_path_to_docs#section]] - but this navigation will happen client side, and
there is no validation that these sections exist at build time. It is possible for future edits to a markdown file to break these links.
Setup
Developer build
Builds the latest docs content from the existing Metasploit Wiki, and serves the files locally:
cd metasploit-framework/docs
bundle install
bundle exec ruby build.rb --serve
Now visit http://127.0.0.1:4000
Production build
Builds the latest docs content from the existing Metasploit Wiki, creates a production Jekyll build, and serves the files locally:
cd metasploit-framework/docs
bundle install
bundle exec ruby build.rb --production --serve