Atlas / MCP servers / ryancodrai / Sourced

SourcedBLOCK

mcp/ryancodrai/sourced

Maps packages to source code. Allows coding agents to search any dependency with grep.

Verdict
BLOCK
Grade
F
Trust score
60 /100
Exposed tools
4 3r · 1w · 0d
Transport
streamable-http
License
MIT
Stars
32
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://sourced.dev) [](LICENSE) [](https://sourced.dev) [](https://sourced.dev) [](https://modelcontextprotocol.io)

Source code search for every package on PyPI and npm.

Sourced.dev provides coding agents with direct access to dependency source code through the Model Context Protocol (MCP). Instead of relying on training data or web searches, agents can read, search, and navigate the actual source of any package — as if it were on your local machine.

Currently tracking all 800,000+ Python packages and all 3,000,000+ npm packages. New releases are indexed within 5 minutes of publication.

Quick Start

Install the MCP server in one command. It authenticates via GitHub and configures your coding agents automatically:

curl -sL sourced.dev/install | sh

The installer will:

  1. Authorize with GitHub.
  2. Create an API key.
  3. Configure the MCP server for your selected agents.

Restart your coding agents after installation to start using Sourced.

Supported Agents

The following coding agents are supported out of the box:

Capabilities

Sourced.dev exposes the

Read from source at commit b967b16b199fOBSERVED · 2026-10-08
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add sourced-landing --env SOURCED_CJA_KEY=${SOURCED_CJA_KEY} --env SOURCED_CODEX_KEY=${SOURCED_CODEX_KEY} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "sourced-landing": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "SOURCED_CJA_KEY": "${SOURCED_CJA_KEY}",
        "SOURCED_CODEX_KEY": "${SOURCED_CODEX_KEY}"
      }
    }
  }
}
03

Exposed tools (4)

3 read · 1 write · 0 destructive.

ToolRiskDescription
globreadFind files matching a glob pattern in a package
grepreadSearch for a regex pattern in a package
readreadRead a file from a package
submit_feedbackwriteSubmit feedback about sourced.dev.
04

Trust audit

BLOCKgrade F · trust 60/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (3 observation(s))
Network
declared (10 observation(s))
Shell
declared (3 observation(s))
Dependencies
not all pinned
Secrets in source
found

Findings (10)

HIGHCode injection · code.deserialize · CWE-78, CWE-94, CWE-95
api/src/utils/google_bucket.py:64
cache_entry = pickle.loads(blob_data)
Why it matters. deserialises untrusted bytes into live objects
Fix. use json or yaml.safe_load
HIGHCode injection · code.deserialize · CWE-78, CWE-94, CWE-95
api/src/utils/google_bucket.py:96
cache_entry = pickle.loads(raw)
Why it matters. deserialises untrusted bytes into live objects
Fix. use json or yaml.safe_load
HIGHCode injection · code.deserialize · CWE-78, CWE-94, CWE-95
api/src/utils/google_bucket.py:107
cache_entry = pickle.loads(raw)
Why it matters. deserialises untrusted bytes into live objects
Fix. use json or yaml.safe_load
HIGHFilesystem / path · fs.credential_store · CWE-22, CWE-59
api/docker-compose.dev.yaml:19
source: ~/.config/gcloud/application_default_credentials.json
Why it matters. touches a credential store
HIGHFilesystem / path · fs.credential_store · CWE-22, CWE-59
api/docker-compose.dev.yaml:48
source: ~/.config/gcloud/application_default_credentials.json
Why it matters. touches a credential store
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
api/tests/unit/test_api_keys.py:353
await service.retrieve_by_hash(api_key="sdk-fake_key_that_does_not_exist")
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
terraform/cloud_run/user_api.tf:165
secret  = "github-app-client-id"
MEDIUMHard-coded secrets · secret.generic · CWE-798, CWE-321
terraform/cloud_run/user_api.tf:175
secret  = "github-app-client-secret"
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
landing/package.json
next, react, react-dom, lucide-react, clsx, tailwind-merge, @types/node, @types/react
Why it matters. 13 dependency range(s) float
Fix. pin exact versions or ship a lockfile
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:20
curl -sL sourced.dev/install | sh

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha b967b16b199ffull audit observations/trust-audit/mcp-server/ryancodrai__sourced.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-08b967b16b199fBLOCKF60first audit
06

Questions

What is the Sourced MCP server?

Maps packages to source code. Allows coding agents to search any dependency with grep.

What tools does Sourced expose?

4 in total: 3 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Sourced safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (60/100) and found 5 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What credentials does Sourced need?

It reads SOURCED_CJA_KEY and SOURCED_CODEX_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Sourced run?

It speaks streamable-http, so it runs as a service you connect to over the network. It is published on npm as sourced-landing at 0.1.0.

How current is this page?

The grade is for one exact copy of the source (b967b16b199f), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement