Real-time physical perception for AI agents — vision, spatial, acoustic, environmental
MCP server for Afferens - real-time physical perception for AI agents.
Use it from local MCP clients over stdio or remote/hosted clients over streamable HTTP. It gives any MCP-compatible AI assistant live sensor data: object detections, positions, sounds, environmental readings, chemical traces, and node health.
| Tool | Auth | Description |
|---|---|---|
afferens_demo | None | Live perception data across all 6 modalities. Free, no key needed. |
afferens_perceive | API key | Query live events by modality with filtering and limits. |
afferens_verify | API key | Fetch the feed twice and return a proof bundle with headers, age, and a freshness verdict. |
Modalities: VISION / SPATIAL / ACOUSTIC / ENVIRONMENTAL / MOLECULAR / INTEROCEPTION
Free tier: 10,000 tokens, no card required. Get your key at afferens.com.
claude mcp add afferens -- npx -y @afferens/mcp-server
Then set your key:
claude mcp add afferens -e AFFERENS_API_KEY=YOUR_KEY -- npx -y @afferens/mcp-server
This stdio setup works for Claude Code, Claude Desktop, Cursor, and Windsurf.
For hosted or browser-based clients, run Afferens in HTTP mode and point the client at the /mcp endpoint:
AFFERENS_TRANSPORT=http AFFERENS_PORT=8790 AFFERENS_API_KEY=YOUR_KEY node dist/index.js
Then register the endpoint:
{
"afferens": {
"url": "http://127.0.0.1:8790/mcp",
"bearer_token_env_var": "AFFERENS_API_KEY"
}
}
Add to your MCP config file:
{
"mcpServers": {
"afferens": {
"command": "npx",
"args": ["-y", "@afferens/mcp-server"],
"env": {
"AFFERENS_API_KEY": "YOUR_KEY"
}
}
}
}
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json.cursor/mcp.json in your project root~/.codeium/windsurf/mcp_config.json{
"mcpServers": {
"afferens": {
"command": "npx",
"args": ["-y", "@afferens/mcp-server"]
}
}
}
Call afferens_demo - no API key needed.
Once connected, your AI agent can call:
afferens_perceive({ modality: "VISION", limit: 5 })
Returns structured perception events your agent can reason over and act on.
For demo verification:
afferens_verify({ modality: "VISION", limit: 3, wait_ms: 2000 })
Returns two raw snapshots plus headers, age, and a hash check so you can show whether the feed is live, stale, or unchanged.
MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y @afferens/mcp-serverMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-afferens-mcp-server": {
"command": "npx",
"args": [
"-y",
"@afferens/mcp-server"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup reference@afferens/mcp-servernpmio.github.afferens/mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.