Skip to content

Security: SylphxAI/pdf-reader-mcp

Security

.github/SECURITY.md

Security Policy

πŸ”’ Reporting Security Vulnerabilities

We take security seriously. If you discover a security vulnerability, please report it responsibly.

⚠️ DO NOT

  • ❌ Open a public GitHub issue
  • ❌ Discuss the vulnerability publicly before it's fixed
  • ❌ Exploit the vulnerability

βœ… DO

  1. Email us directly: hi@sylphx.com
  2. Include detailed information:
    • Description of the vulnerability
    • Steps to reproduce
    • Potential impact
    • Suggested fix (if you have one)
  3. Wait for our response - We aim to respond within 48 hours

πŸ›‘οΈ Security Response Process

Timeline

  1. Report received - We acknowledge within 48 hours
  2. Investigation - We assess severity and impact (1-7 days)
  3. Fix development - We develop and test a fix
  4. Coordinated disclosure - We release the fix and publish security advisory
  5. Credit - We credit the reporter (if desired)

Communication

  • We'll keep you informed throughout the process
  • We'll coordinate disclosure timing with you
  • We'll credit you in the security advisory (unless you prefer anonymity)

🎯 Scope

In Scope

βœ… All SylphxAI repositories

  • MCP servers (pdf-reader-mcp, filesystem-mcp, rag-server-mcp)
  • Libraries (craft, zen, silk)
  • Tools and utilities
  • Documentation sites

βœ… Security Issues

  • Authentication/authorization bypasses
  • Code injection vulnerabilities
  • Path traversal attacks
  • Denial of service (DoS)
  • Information disclosure
  • Cryptographic weaknesses
  • Dependency vulnerabilities

Out of Scope

❌ Not Considered Security Issues

  • Issues requiring physical access to user's machine
  • Social engineering attacks
  • Attacks requiring user to install malicious software
  • Issues in third-party dependencies (report to the dependency maintainers)
  • Theoretical vulnerabilities without proof of concept

πŸ” Security Best Practices

For Contributors

When contributing code:

  1. Never commit secrets

    # ❌ Don't do this
    API_KEY=sk-1234567890abcdef
    
    # βœ… Do this
    API_KEY=${API_KEY}  # Read from environment
  2. Validate all inputs

    // βœ… Good
    function processFile(path: string) {
      if (!isValidPath(path)) {
        throw new Error('Invalid path');
      }
      // ...
    }
  3. Handle errors securely

    // ❌ Don't expose internals
    catch (error) {
      throw new Error(error.stack);
    }
    
    // βœ… Safe error messages
    catch (error) {
      throw new Error('Failed to process file');
    }
  4. Use secure dependencies

    # Check for vulnerabilities
    npm audit
    
    # Fix vulnerabilities
    npm audit fix

For Users

When using our tools:

  1. Keep packages updated

    npm update
  2. Review permissions - Especially for MCP servers

  3. Use environment variables - Never hardcode secrets

  4. Enable security features - Use sandboxing when available


πŸ“‹ Supported Versions

We provide security updates for:

Package Supported Versions
pdf-reader-mcp Latest release only
filesystem-mcp Latest release only
rag-server-mcp Latest release only
craft Latest major version
zen Latest major version
silk Latest release only

Recommendation: Always use the latest version.


πŸ” Security Features

PDF Reader MCP

  • βœ… Sandboxed PDF processing
  • βœ… Input validation for file paths
  • βœ… Resource limits (file size, processing time)
  • βœ… No external network access during processing

Filesystem MCP

  • βœ… Root directory confinement
  • βœ… Path traversal protection
  • βœ… Permission controls
  • βœ… No access outside allowed directories

RAG Server MCP

  • βœ… Local-only processing (no cloud)
  • βœ… ChromaDB data isolation
  • βœ… No external API calls with user data

🚨 Known Security Considerations

MCP Servers

Important: MCP servers run with your local user permissions.

⚠️ Be cautious when:

  • Running servers from untrusted sources
  • Granting filesystem access
  • Processing untrusted files
  • Connecting to remote MCP servers

βœ… Best Practices:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@sylphx/filesystem-mcp"],
      "env": {
        "ALLOWED_DIRECTORIES": "/safe/path/only"
      }
    }
  }
}

πŸ“š Security Resources

Documentation

Tools


πŸ† Security Hall of Fame

We recognize and thank security researchers who responsibly disclose vulnerabilities:

(No reports yet)


πŸ“ž Contact

Security Team: hi@sylphx.com

For non-security issues:


πŸ“„ Policy Updates

This policy may be updated from time to time. Check back regularly for changes.

Last Updated: January 2025


Security is a shared responsibility
Thank you for helping keep Sylphx projects secure

sylphx.com β€’ GitHub β€’ hi@sylphx.com

There aren’t any published security advisories