Install
$ agentstack add mcp-001tmf-pinakes Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Pipes remote content directly into a shell (remote code execution).
What it can access
- ● Network access Used
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Pinakes
Deterministic, verifiable data for AI agents.
Pinakes is a single signed static Go binary — with zero runtime dependencies — that gives AI agents reproducible, complete, and verifiable access to public scientific databases. It is a CLI, a Model Context Protocol stdio server, and a local REST server, all in one executable.
Named for the Pínakes, the catalogue of the Library of Alexandria — the first index of all knowledge.
> The problem: ask a public biological database the same question twice and you can get different result sets. Tools paginate and truncate differently, and the databases expose no stable order. An agent's analysis silently inherits that drift, and nothing flags it. > > The fix: every Pinakes query pins a content-addressed snapshot, so results are byte-identical forever; retrieval is complete-or-fail (the returned count is reconciled against the source's authoritative total — a short set fails loudly, never silently); and every result ships a re-runnable manifest that pinakes verify re-derives offline to prove the result is exactly what it claims. It is git for scientific data.
Install
Install the single static binary:
curl -fsSL https://get.pinakes.sh | sh
No token, no Docker, no network at query time beyond the source databases themselves. The install script verifies the release's SHA-256 checksum (and its cosign keyless signature when cosign is present) before installing anything.
Then register pinakes mcp with your MCP client — any client (Claude, Cursor, Cline, Windsurf, Zed, …); see [Add to any MCP client](#add-to-any-mcp-client) below. (In Claude Code, for example, that's one line: claude mcp add --scope user pinakes -- pinakes mcp.)
> Homebrew (coming soon). brew install pinakes-sh/tap/pinakes is pending the public Homebrew tap and is not live yet — use the curl | sh line above for now.
Add to any MCP client
Most clients (Claude Desktop, Cursor, Windsurf, Zed, VS Code via .mcp.json, …) read a standard config block. Add Pinakes to it:
{
"mcpServers": {
"pinakes": {
"command": "pinakes",
"args": ["mcp"]
}
}
}
No env, no token, no Docker — fully local and offline. If your GUI app can't find pinakes on its PATH, replace "command": "pinakes" with the absolute path from which pinakes.
Other ways to install
Homebrew (coming soon)
brew install pinakes-sh/tap/pinakes
Pending the public Homebrew tap — not live yet. Until then, use the curl | sh line above.
Go toolchain
go install pinakes.sh/pinakes/cmd/pinakes@latest
After installing, confirm the server is wired up by listing the catalogue:
pinakes catalog
API keys (optional)
Pinakes works fully without any key. The only sources that benefit today are the two NCBI sources (ncbi-protein, ncbi-virus): supplying a free NCBI api key raises your own upstream rate limit (E-utilities and the NCBI Datasets API both lift to ~10 requests/sec with a key, vs 3–5 without).
A key affects rate limits only — never the results, their order, or their hashes. Pinakes attaches the key to the outbound HTTP request alone; it never enters a snapshot, a record, or the reproducibility manifest, so a query is byte-identical and reproducible with or without a key.
The single ncbi alias covers both NCBI sources. Set it via the scoped CLI (the key is read from stdin, never passed as an argument, and stored at ~/.config/pinakes/config.yaml with 0600 permissions):
pinakes config set-key ncbi # paste at the prompt, or: A future hosted tier (accounts, metering) will use `PINAKES_API_KEY`. The local binary in this repository needs **no key** — it is the open, local engine, fully usable offline.
---
## Versioning & stability
Pinakes follows [SemVer](https://semver.org). Tags are `vMAJOR.MINOR.PATCH`.
Two things version separately:
- **The determinism contract** is frozen at `ManifestSchemaVersion` **1.0.0**. A pinned query and the manifest `pinakes verify` re-derives stay reproducible across releases. See [CONTRACTS.md](CONTRACTS.md) for what the contract covers and the rules for ever changing it.
- **The CLI, MCP, and REST surfaces** are still on the `0.x` line. Flags, tool names, and endpoints may change before `1.0.0`; surface stability is promised only at `1.0.0`. The contract above does not move when a surface does.
---
## License
Apache License 2.0. See [LICENSE](LICENSE).
## Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [001TMF](https://github.com/001TMF)
- **Source:** [001TMF/pinakes](https://github.com/001TMF/pinakes)
- **License:** Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.