streamable-httpApache-2.0updated 1mo ago
Credential isolation, approval gating, and connector routing for AI agents.
What can you do with TAP?
Tool Authorization Protocol (TAP)
Credential isolation, approval gating, and connector routing for AI agents.
This repository contains the code that is most useful for:
- auditing request routing and connector behavior
- debugging failed requests
- understanding approval flows
- improving connector-side request shaping
- contributing fixes to the core TAP experience
[!WARNING] Self-hosting means you own the security of your credentials and signing keys. TAP keeps secrets out of your agents, but running it yourself puts the host hardening, key isolation, and correct policy-engine operation on you. It's a path for teams that are well versed in security. For everyone else the hosted version is strongly recommended: credentials sit in a hardware enclave we can't read into, with no ops to run. Start free at tap.human.tech.
Start Here
crates/tap-proxy/src/routing.rs— how TAP resolves connector target shapescrates/tap-proxy/src/placeholder.rs— credential substitution and position validationcrates/tap-proxy/src/policy.rs— approval policy enforcementdocs/— full documentation including self-hosting guide
Included
- core proxy and storage crates
- Telegram and Matrix approval bots
- remote MCP server (
tap-mcp) - CLI
- docs (self-hosting, API reference, credential setup)
Not Included
- enclave deployment glue (CCE policy generation, release-policy automation, ARM templates, env config)
- production workflows and secret bootstrapping
- managed hosting operations glue
- the hosted dashboard UI source (a placeholder is shipped so the proxy compiles)
The enclave key-management source is included (key_provider_enclave.rs,
kms_azure.rs, skr.rs) — it's the custody model documented at
docs.tap.human.tech/security, and each
hosted release's enclave measurement is published in measurements/.
Hosted deployment and operational infrastructure are maintained separately from this repository.
Security
See SECURITY.md to report a vulnerability.
License
Apache-2.0: free to use, read, modify, and self-host. This repo is the
open-source TAP runtime (tap-core, tap-proxy, tap-bot, tap-cli, tap-mcp). The
hosted dashboard and managed-service deployment glue are proprietary and live in
a separate private repo.
Contributing
See CONTRIBUTING.md.
Testing
# Needs Postgres (default postgres://tap:tap@localhost:5434/tap, override with
# POSTGRES_DATABASE_URL). Isolated suites parallelize; env-mutating unit tests stay serial.
cargo test -p tap-core
cargo test -p tap-proxy --test integration --test e2e
cargo test -p tap-proxy -p tap-bot -p tap-cli --lib --bins -- --test-threads=1
Install
Add TAP to your client. Pick the one you use.
claude mcp add --transport http tap https://mcp.tap.human.tech/mcpcodex mcp add tap --url https://mcp.tap.human.tech/mcp{
"mcpServers": {
"tap": {
"url": "https://mcp.tap.human.tech/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"tap": {
"type": "http",
"url": "https://mcp.tap.human.tech/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"tap": {
"url": "https://mcp.tap.human.tech/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"tap": {
"serverUrl": "https://mcp.tap.human.tech/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance16/25
- Trust16/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 40 days ago
- Has a release history
- Repository is not archived
- Licensed Apache-2.0
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.1.0Latest | Jul 24, 2026 |