steganography-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| img_detectA | Auto-detect steganography in an image. Runs chi-square, RS analysis, entropy, metadata, appended data, and tool signature checks. Returns a comprehensive JSON report. |
| img_lsb_detectB | Statistical LSB steganography detection. Runs chi-square and sample pair analysis on each color channel independently. |
| img_lsb_extractA | Extract hidden data from image LSBs. Extracts bits from specified channels and bit plane, attempts UTF-8 decode, and shows hex dump. |
| img_lsb_embedA | Embed a message into an image using LSB steganography. Reads a PNG file, embeds the message into the least significant bits, and writes a new PNG file. |
| img_bitplaneB | Extract and visualize a specific bit plane from an image channel. Shows dimensions, percentage of 1-bits, and an ASCII art preview of the first rows. |
| img_chi_squareA | Chi-square steganalysis attack on each color channel independently. Detects LSB replacement by testing whether adjacent pixel value pairs are equalized. |
| img_rs_analysisA | RS (Regular-Singular) steganalysis using the Fridrich-Goljan-Du method. Analyzes pixel groups to estimate LSB embedding rate per channel. |
| img_histogramA | Generate a pixel value histogram with anomaly detection. Detects Pairs-of-Values (PoV) anomalies that indicate LSB steganography. |
| img_entropy_mapA | Per-block entropy analysis of an image. Splits the image into blocks and calculates Shannon entropy per block, flagging high-entropy regions that may contain hidden data. |
| img_metadataA | Deep metadata extraction from an image. For PNG: extracts text chunks, chunk list, IHDR info. For JPEG: extracts EXIF, comments, quantization tables, marker list. |
| img_appended_dataA | Detect and extract data appended after the image EOF marker. Checks for hidden data past PNG IEND, JPEG EOI, or BMP file size boundary. |
| img_compareA | Pixel-by-pixel comparison of two images. Reports identical/different pixel counts, max difference, and which channels are affected. Useful for detecting steganographic modifications. |
| img_channel_analysisA | Per-channel statistical analysis for R, G, B, and A channels. Reports mean, standard deviation, entropy, min, max, and unique value count for each channel. |
| img_known_toolsA | Scan image file bytes for known steganography tool signatures. Checks against a database of known patterns from tools like OpenStego, Steghide, JSteg, F5, and others. |
| jpeg_structureA | Parse JPEG markers/segments with offsets and sizes. Shows the internal structure of a JPEG file including all markers, their positions, and segment lengths — useful for identifying hidden data or anomalous segments. |
| jpeg_dct_histogramA | DCT coefficient distribution analysis for steganography detection. Analyzes the Y-channel pixel value distribution and SOS entropy data to detect anomalies caused by DCT-domain stego tools like JSteg, F5, and OutGuess. |
| jpeg_double_compressionA | Detect double JPEG compression artifacts. Double compression occurs when a JPEG is decoded and re-encoded, which introduces characteristic blocking artifacts and quantization table anomalies — a common indicator of image tampering or steganographic embedding. |
| jpeg_quantizationA | Quantization table analysis with quality estimation. Displays all quantization tables in 8x8 grid format and estimates the JPEG quality factor by comparing against the standard luminance/chrominance tables — essential for forensic analysis. |
| jpeg_exif_deepA | Deep EXIF analysis including GPS coordinates, timestamps, software info, thumbnails, maker notes, and all IFD entries. Flags interesting fields for forensic investigation such as editing software traces, GPS location, and temporal inconsistencies. |
| jpeg_thumbnail_compareA | Compare the EXIF thumbnail against the main JPEG image. A dimension or content mismatch between the thumbnail and the main image is a strong indicator that the main image was modified after capture while the original thumbnail was preserved — a common forensic artifact. |
| jpeg_commentA | Extract and analyze JPEG COM (comment) markers. Checks for hidden data patterns, unusually large comment segments, and high-entropy content that could indicate steganographic payloads concealed in comment fields. |
| audio_detectA | Auto-detect audio steganography in a WAV file. Runs LSB chi-square, entropy analysis, metadata inspection, and checks for appended data after the WAV data chunk. |
| audio_lsb_detectB | PCM sample LSB statistical analysis. Performs chi-square test on LSBs grouped by value pairs to detect LSB replacement steganography in WAV audio. |
| audio_lsb_extractA | Extract LSB data from audio samples. Reads the least significant bit of each PCM sample and attempts to decode hidden data. |
| audio_spectrumA | Basic spectral analysis for hidden signals in WAV audio. Analyzes sample value distribution, zero-crossing rate, RMS energy per block, and detects anomalous quiet sections with high entropy. |
| audio_metadataA | Extract metadata from a WAV file including RIFF INFO chunks, format details, and all chunk information. |
| audio_silenceA | Analyze silent sections in WAV audio for hidden data. Finds near-zero sample regions and checks their LSBs — silent sections with active LSBs are a strong indicator of steganography. |
| audio_echo_detectA | Echo hiding detection via autocorrelation analysis. Computes normalized autocorrelation at common echo delays (50-1000 samples). Unusually regular echo patterns indicate steganographic echo hiding. |
| text_detectA | Auto-detect text steganography. Checks for zero-width characters, whitespace encoding, invisible Unicode, homoglyphs, and unusual patterns. |
| text_zwc_detectA | Detect zero-width characters (ZWSP, ZWNJ, ZWJ, BOM) in text. Reports positions, counts, and potential encoded message length. |
| text_zwc_extractA | Decode a zero-width character encoded message. Extracts ZWC chars and decodes binary: ZWSP=0, ZWNJ=1 (attempts both polarities). |
| text_zwc_embedA | Embed a secret message into cover text using zero-width characters. Encodes the message to binary and maps bits to ZWSP(0)/ZWNJ(1), inserting them between characters of the cover text. |
| text_whitespace_detectA | Detect whitespace encoding in text. Checks each line for trailing whitespace patterns where space=0 and tab=1 might encode binary data. |
| text_whitespace_extractA | Extract a whitespace-encoded message from text. Reads trailing whitespace from each line and decodes space=0/tab=1 binary encoding. |
| text_invisible_scanA | Scan text for ALL invisible Unicode characters. Checks every character against the full invisible character database and reports positions, names, and categories. |
| text_homoglyphA | Detect Unicode homoglyph substitutions in text. Identifies non-ASCII characters that visually resemble ASCII letters (e.g., Cyrillic a vs Latin a, Greek o vs Latin o). |
| text_unicode_analysisA | Full Unicode character distribution analysis. Categorizes all characters by script block, performs entropy analysis, and detects suspicious script mixing. |
| text_acrosticA | Detect first-letter, first-word, last-letter, last-word, or nth-character patterns (acrostic messages) hidden across lines of text. |
| file_identifyA | File type identification via magic bytes. Reads the file header and matches against a comprehensive database of known file signatures. Also checks for extension vs actual type mismatch. |
| file_polyglotA | Detect polyglot files that are valid as two or more different file formats simultaneously. Checks for multiple valid file signatures at different offsets (e.g., PDF+ZIP, PNG+PDF). Useful for CTF challenges and forensic analysis. |
| file_embeddedA | Scan for embedded files within a binary, similar to binwalk. Searches for known magic byte signatures at every offset within the file to discover hidden or appended files, concatenated archives, and other embedded content. |
| file_appendedB | Detect data appended after a file's format-specific end-of-file marker. Supports PNG (IEND), JPEG (FFD9), BMP (file size header), ZIP (end of central directory), and PDF (%%EOF). Commonly used to hide data in images and documents. |
| file_entropyA | Section-by-section entropy analysis of a file. Calculates Shannon entropy per block and overall, flagging anomalous high-entropy sections that may indicate encrypted, compressed, or steganographically embedded data. |
| file_entropy_visualA | ASCII entropy visualization of a file. Renders a text-based bar chart showing entropy levels across the file, making it easy to visually spot high-entropy regions that may contain hidden data, encryption, or compression. |
| file_stringsA | Extract printable and Unicode strings from binary files, similar to the Unix 'strings' command. Scans for runs of printable characters of a configurable minimum length and reports them with their file offsets. Supports ASCII, UTF-8, and UTF-16. |
| file_hexA | Hex dump with ASCII sidebar display. Shows file contents in traditional hex editor format with offset addresses, hexadecimal byte values, and printable ASCII representation. Useful for manual inspection of binary file structures. |
| file_headerA | Deep header and structure analysis for known file formats. Parses and displays format-specific header fields including PNG IHDR chunk, JPEG SOF markers, BMP info header, ZIP local file headers, and PDF version/metadata. Provides low-level structural insight. |
| file_compareA | Binary diff between two files. Compares files byte-by-byte and reports size comparison, first N differences with their offsets and values, percentage of identical bytes, and a summary of the changes. Useful for detecting steganographic modifications. |
| doc_pdf_hiddenA | Hidden PDF content detection. Scans PDF files for suspicious elements including embedded JavaScript (/JS), auto-actions (/AA, /OpenAction), hidden annotations, invisible text (white-on-white), embedded files, and other potentially malicious or covert content. |
| doc_pdf_metadataA | PDF metadata extraction. Parses the /Info dictionary for standard fields (Title, Author, Creator, Producer, CreationDate, ModDate) and searches for XMP metadata blocks. Useful for forensic attribution and document provenance analysis. |
| doc_pdf_streamsA | PDF stream analysis. Locates all stream/endstream blocks in a PDF, attempts zlib decompression on each, and reports sizes and entropy. Useful for finding hidden data within compressed PDF content streams. |
| doc_html_hiddenB | Hidden HTML content detection. Scans HTML files for covert content including HTML comments, elements with display:none or visibility:hidden, data-* attributes, hidden form inputs, base64 embedded content, zero-size elements, and other techniques used to hide information. |
| doc_xml_metadataA | XML and Office document metadata extraction. Parses XML-like content for Dublin Core metadata (dc:creator, dc:title), Microsoft Office properties, processing instructions, and other metadata that may reveal authorship, editing history, or hidden information. |
| crypto_detectA | Auto-detect encoding type of an input string. Tests against all known encoding patterns (Base64, hex, binary, morse, URL encoding, HTML entities, etc.) and returns matches sorted by confidence, with attempted decoding for top results. |
| crypto_decodeA | Multi-format decoder supporting Base64, hex, binary, decimal, octal, URL encoding, ROT13, Base32, Morse code, and HTML entities. In auto mode, detects the encoding first and applies the appropriate decoder. |
| crypto_frequencyA | Character frequency analysis for cryptanalysis. Counts character occurrences, compares to standard English letter frequency (ETAOINSHRDLU), and calculates the Index of Coincidence. IC near 0.0667 suggests English/monoalphabetic, IC near 0.038 suggests random/polyalphabetic. |
| crypto_entropyB | Shannon entropy calculation and classification for strings. Computes both character-level and byte-level entropy, classifying the result into categories: very low (repeated), low (simple text), normal text, compressed/encoded, or encrypted/random. |
| crypto_xorA | XOR key brute-force for single-byte and multi-byte keys. Tries all single-byte XOR keys (0x00-0xFF) and scores by printable character ratio. For multi-byte keys, uses Index of Coincidence to estimate key length. Returns top 5 most likely results. |
| crypto_hash_idA | Hash type identification. Matches the input against known hash patterns by length and format to identify possible hash algorithms (MD5, SHA-1, SHA-256, SHA-512, bcrypt, CRC32, NTLM, MySQL, etc.). |
| crypto_patternsA | Known cipher and encoding pattern detection. Analyzes text for indicators of Caesar cipher, substitution cipher, Vigenere, rail fence transposition, Atbash cipher, and reversed text. Uses statistical methods like Index of Coincidence and frequency analysis. |
| video_detectA | Auto-detect steganography in an AVI video. Runs LSB analysis on the first few frames, checks for appended data after the RIFF container, and analyzes frame size variance for anomalies. |
| video_frame_lsbA | LSB analysis of a specific video frame. Extracts the raw pixel data from the given frame index and checks LSB distribution, balance, and entropy. |
| video_frame_extractB | Extract LSB data from video frames as bytes. Collects the least significant bit from each byte of the specified frames and assembles them into a byte stream with hex dump and text preview. |
| video_frame_compareA | Compare adjacent video frames for pixel-level anomalies. Computes byte-level diff, Mean Squared Error (MSE), and PSNR between two frames to detect steganographic modifications. |
| video_inter_frameB | Analyze frame types from the AVI idx1 index. Reports keyframe vs delta frame distribution, size statistics per type, and flag anomalies that may indicate steganographic manipulation. |
| video_metadataA | Extract metadata from an AVI video file. Reports dimensions, FPS, codec, stream info, duration, and file-level properties. |
| video_structureA | Visualize the AVI/RIFF chunk structure as a tree. Shows all chunks, their FourCC codes, offsets, and sizes for forensic analysis of the container structure. |
| video_eof_dataA | Detect and analyze data appended after the AVI RIFF container EOF. Reports the offset, size, entropy, and hex dump of any trailing data that may contain hidden payloads. |
| gif_detectA | Auto-detect steganography in a GIF file. Analyzes the global color table for LSB patterns, checks for appended data after the trailer, inspects comment extensions, and reports frame count and animation info. |
| gif_paletteA | Analyze the GIF global color table for steganographic indicators. Reports sort order, duplicate entries, unused slots, color distribution, and luminance profile. |
| gif_palette_lsbB | Extract and analyze LSB patterns from GIF color table entries. Reports per-channel LSB bit strings, balance ratios, and chi-square test results for LSB uniformity. |
| gif_frame_analysisA | Analyze multi-frame GIF animation properties. Reports per-frame size, delay times, disposal methods, local color tables, and anomalies in frame dimensions or compression. |
| gif_commentA | Extract and analyze GIF comment extensions. Comments can be used to hide data within a GIF file. Reports all comment text, sizes, and entropy. |
| gif_appextB | Analyze GIF application extensions. Inspects NETSCAPE and other application extension blocks for anomalies or hidden data payloads. |
| gif_lzw_analysisA | Analyze LZW compressed sub-block sizes and entropy in GIF image data. Checks individual sub-block sizes for anomalies and patterns that may indicate steganographic manipulation of the compressed stream. |
| gif_structureA | Visualize the GIF block structure. Shows all blocks (header, color tables, extensions, image descriptors, trailer) with offsets and sizes for forensic analysis. |
| net_detectB | Auto-detect network steganography in a PCAP file. Checks IP covert header fields, ICMP payload anomalies, DNS tunneling indicators, and inter-packet timing patterns. Returns a combined suspicion score. |
| net_ip_headerB | IP header covert field analysis. Examines TTL patterns, IP identification field entropy, and TOS/DSCP usage across packets to detect hidden data in IP header fields. |
| net_tcp_headerA | TCP sequence/acknowledgment number analysis. Checks for patterns in ISN (Initial Sequence Numbers), unusual TCP options, and seq/ack number anomalies that could indicate covert channel usage. |
| net_icmp_payloadA | ICMP echo payload analysis. Examines entropy, printable content ratio, payload size anomalies, and pattern consistency of ICMP echo request/reply payloads to detect covert data exfiltration. |
| net_dns_tunnelA | DNS tunneling detection. Analyzes subdomain length distribution, label entropy, TXT record usage, query frequency per domain, and unique subdomain counts to identify DNS-based covert channels. |
| net_http_headerB | HTTP header covert channel analysis. Examines unusual/custom headers, cookie value entropy, header ordering anomalies, and hidden data in standard header fields across HTTP traffic in a PCAP. |
| net_timingA | Inter-packet timing analysis. Computes packet arrival intervals and analyzes them for binary encoding patterns (e.g., short interval = bit 0, long interval = bit 1). Detects timing-based covert channels. |
| net_statsA | PCAP statistics summary. Reports packet count, protocol distribution, top IP pairs, port usage, capture duration, and data volume for an overview of the capture file. |
| mp3_detectA | Auto-detect MP3 steganography. Checks ID3 tag padding, gaps before first audio frame, trailing data after last frame, bitrate anomalies, and inter-frame gaps for signs of hidden data. |
| mp3_frame_analysisA | MP3 frame header analysis. Examines bitrate changes, padding patterns, VBR detection, frame size consistency, and layer/version anomalies across audio frames. |
| mp3_id3_hiddenA | ID3v1/v2 hidden data analysis. Inspects APIC (image) frames, PRIV (private) frames, excessive padding, unknown frame IDs, and overall tag entropy for signs of steganographic content. |
| mp3_paddingB | Bit reservoir and padding manipulation detection. Analyzes the gap before the first audio frame, inter-frame gaps between consecutive frames, and checks for data inserted between or around audio frames. |
| mp3_sample_analysisB | Statistical analysis of decoded MP3 frame sizes. Computes entropy, variance, and anomalies in frame size distribution to detect steganographic manipulation of audio frame data. |
| mp3_metadataB | Full MP3 metadata extraction. Reports ID3v1 tag, ID3v2 frames with content, duration, bitrate, VBR status, sample rate, and file structure overview. |
| mp3_structureA | MP3 frame structure visualization. Displays the first N frames with bitrate, padding bit, channel mode, and frame size for a detailed map of the file's audio frame layout. |
| jpegadv_f5_detectA | F5 steganography detection. F5 embeds data by decrementing the absolute values of DCT coefficients toward zero (shrinkage). Detects the characteristic excess of zeros relative to near-zero coefficients and the histogram dip at +/-1 that F5 matrix embedding produces. |
| jpegadv_jsteg_detectA | JSteg steganography detection. JSteg replaces the LSB of non-zero, non-one DCT coefficients. Uses chi-square test on coefficient value pairs (2k, 2k+1) to detect the equalization that JSteg embedding produces. Includes sliding window analysis on sequential AC coefficients. |
| jpegadv_outguess_detectB | OutGuess steganography detection. OutGuess embeds data in DCT coefficients and adjusts unused coefficients to preserve first-order statistics. Detects by analyzing second-order statistics (inter-block coefficient correlations) that OutGuess disrupts, and checks for preserved histogram with disrupted spatial correlations. |
| jpegadv_pvd_detectC | Pixel Value Differencing (PVD) steganography detection applied to JPEG. PVD encodes data in the differences between adjacent pixel values. Detects by analyzing the distribution of pixel differences for the staircase pattern at PVD range boundaries (Wu-Tsai ranges). Works on decoded pixel data via jpeg-js. |
| jpegadv_chi_slidingA | Sliding window chi-square analysis over sequential DCT coefficients. Divides the coefficient stream into windows of configurable size and runs chi-square pair analysis on each window. Returns per-window p-values and detection results to map where embedding starts and stops. |
| jpegadv_calibrationA | Crop-recalibrate steganalysis. Crops the image by removing a few pixel rows/columns to break DCT block alignment, then compares DCT and pixel statistics between the original and calibrated version. Steganographic modifications are revealed because recalibration restores natural statistics that embedding had disrupted. |
| jpegadv_compatibilityA | JPEG stego tool compatibility check. Analyzes the image to determine which steganography tools could have been used based on its properties: color space, quality factor, progressive vs baseline encoding, marker structure, quantization tables, and metadata patterns. |
| spread_dft_analysisA | DFT magnitude spectrum analysis for spread spectrum steganography detection. Computes the Discrete Fourier Transform of pixel values and analyzes the frequency spectrum for hidden signals, unusual peaks, or spectral flatness anomalies that indicate spread spectrum embedding. |
| spread_correlationB | Autocorrelation-based steganography detection. Computes the autocorrelation of pixel values to find periodic embedding patterns. Spread spectrum and watermarking methods often introduce periodic signals that appear as peaks in the autocorrelation function. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/badchars/steganography-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server