• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

nogoo9 / mcp-server-cloud-fs / 26047347173
68%

Build:
DEFAULT BRANCH: main
Ran 18 May 2026 04:48PM UTC
Jobs 1
Files 56
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 May 2026 04:47PM UTC coverage: 68.233% (+1.4%) from 66.832%
26047347173

push

github

web-flow
feat: v0.7.0 — AI-native tools, DLP, ETags, scope filtering, patch_file (#27)

* feat(auth): dynamic tool surface reduction based on OAuth scopes (#22)

Add scope-based tool filtering to createMcpServer. When grantedScopes
is provided in ServerContext, only tools matching the granted OAuth
scopes are registered — removing unauthorized tools from tools/list
entirely (not just denying invocation).

New exports from src/auth/scopes.ts:
- getToolsForScopes(scopes): returns accessible tool names
- shouldRegisterTool(name, scopes): boolean check for registration

Backwards-compatible: omitting grantedScopes registers all tools.

Closes #22

* feat(middleware): DLP content sanitization for PII/secret redaction (#23)

Add Data Loss Prevention middleware that redacts sensitive content
(AWS keys, emails, SSN, credit cards, JWTs, API keys) from tool
responses before they reach the MCP client.

New files:
- src/middleware/dlp.ts: sanitizeContent() + applyDlpWrapper()
- src/middleware/dlp.test.ts: 14 tests covering all default patterns

Opt-in via --enable-dlp CLI flag. Ships 9 default regex patterns.

Closes #23

* feat(tools): AI-native get_file_schema and summarize_file tools (#24)

Add two tools that extract structural metadata server-side,
reducing LLM context token waste:

- get_file_schema: CSV column detection with type inference,
  JSON shape analysis, generic text line/byte counts
- summarize_file: compact head/tail summary without full read

Pure TypeScript — no new dependencies. Mapped to cloud-fs:read scope.

Closes #24

* feat(vfs): optimistic concurrency control via ETags (#25)

Add content-addressable ETags (SHA-256) to the VFS layer for
multi-agent conflict detection:

- put() computes and stores etag in inode overlay
- stat() returns etag when available
- edit_file accepts optional expected_etag parameter
  - matching etag: edit proceeds normally
  - mismatching etag: returns conflict error with instructions
  - omitted: backwards-compatible, no ... (continued)

447 of 563 new or added lines in 7 files covered. (79.4%)

3398 of 4980 relevant lines covered (68.23%)

23.61 hits per line

Uncovered Changes

Lines Coverage ∆ File
49
76.78
src/tools/ai-native.ts
32
84.08
src/tools/patch.ts
27
70.0
src/middleware/dlp.ts
8
75.0
-0.28% src/tools/write.ts
Jobs
ID Job ID Ran Files Coverage
1 26047347173.1 18 May 2026 04:48PM UTC 56
68.23
GitHub Action Run
Source Files on build 26047347173
  • Tree
  • List 56
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26047347173
  • c3260f37 on github
  • Prev Build on main (#25894592744)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc