@voightxyz/agents-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@voightxyz/agents-mcpWhich of my agents are running, and how much did they use this week?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@voightxyz/agents-mcp
Operate your Voight Agents from any MCP client.
List your deployed agents, check their state and usage, talk to them and wake their GPUs, from Claude Code, Cursor, Codex, VS Code, Claude Desktop or Gemini CLI.
Voight Agents · Docs · Voight
Voight Agents are autonomous AI agents you deploy in minutes. They run 24/7 on Voight cloud or on Nosana GPUs, browse the web, run scheduled tasks and work through the channels you connect (Telegram, GitHub and more). This package is a local Model Context Protocol server that lets your coding assistant operate them for you.
"Which of my agents are running, and how much did they use this week?"
"Ask my research agent for a summary of today's AI funding news."
"Wake my GPU agent and tell me when it is ready."Quick start
1. Create an API key. Open voight.xyz/dashboard/settings, create a key and choose the access level Agents: operate. The key is shown once. Ingest keys (the ones used by @voightxyz/sdk) do not work here, by design.
2. Add the server to your client. It runs with npx, there is nothing to install.
claude mcp add --env VOIGHT_API_KEY=vk_your_key --transport stdio voight-agents -- npx -y @voightxyz/agents-mcpTo share the config with a team without sharing the secret, commit a .mcp.json that reads the key from each person's environment:
{
"mcpServers": {
"voight-agents": {
"command": "npx",
"args": ["-y", "@voightxyz/agents-mcp"],
"env": { "VOIGHT_API_KEY": "${VOIGHT_API_KEY}" }
}
}
}~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"voight-agents": {
"command": "npx",
"args": ["-y", "@voightxyz/agents-mcp"],
"env": { "VOIGHT_API_KEY": "vk_your_key" }
}
}
}.vscode/mcp.json. VS Code asks for the key once and stores it securely:
{
"inputs": [
{ "type": "promptString", "id": "voight-api-key", "description": "Voight API key (Agents: operate)", "password": true }
],
"servers": {
"voight-agents": {
"command": "npx",
"args": ["-y", "@voightxyz/agents-mcp"],
"env": { "VOIGHT_API_KEY": "${input:voight-api-key}" }
}
}
}~/.codex/config.toml:
[mcp_servers.voight_agents]
command = "npx"
args = ["-y", "@voightxyz/agents-mcp"]
startup_timeout_sec = 30
[mcp_servers.voight_agents.env]
VOIGHT_API_KEY = "vk_your_key"claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"voight-agents": {
"command": "npx",
"args": ["-y", "@voightxyz/agents-mcp"],
"env": { "VOIGHT_API_KEY": "vk_your_key" }
}
}
}~/.gemini/settings.json. Gemini CLI does not pass variables named like *KEY* from your shell, so the key has to be set in the env block:
{
"mcpServers": {
"voight-agents": {
"command": "npx",
"args": ["-y", "@voightxyz/agents-mcp"],
"env": { "VOIGHT_API_KEY": "vk_your_key" }
}
}
}3. Ask. "List my Voight agents" is a good first message.
Related MCP server: Agent5ive MCP Server
Tools
Tool | What it does | Spends credits |
| Agents on the account: id, state, hosting (Voight cloud or Nosana GPU), model, days left. Optional | No |
| One agent in detail: channels, expiry, on-chain identity link, Nosana job link, persona. | No |
| Credit balance, plan and the price of one deploy. | No |
| Turns, tokens and inference cost for one agent (with 14 days of daily tokens and billed GPU hours) or for the whole account. | No |
| Scheduled and one-off tasks of an agent, with the result of the last run. | No |
| Sends one message and waits for the reply. | Inference, like any chat turn |
| Collects the reply of a turn that was still running. Never sends anything. | No |
| Starts the GPU of a stopped Nosana agent. | Can bill one GPU hour |
Run with --read-only (or VOIGHT_MCP_READ_ONLY=1) to expose only the first five tools.
How chat works
An agent can work on a single message for minutes: it searches, runs tools and writes files before it answers. MCP clients give a tool call much less time than that (60 seconds in several of them). So chat_with_agent waits up to about 50 seconds:
If the reply is ready, you get it.
If not, you get
status: "running", aturn_refand what the agent is doing right now.get_replywith thatturn_refcollects the answer, and can be called as many times as needed.
A message is never sent twice: while a turn is running, a new message to the same agent is refused. The conversation continues across calls; pass new_conversation: true to start over.
Turns are kept in the memory of this process. If your client restarts the server while an agent is working, the turn_ref is lost. The agent still finishes on its side.
GPU agents
Agents hosted on Nosana GPUs stop their GPU when the paid hours end, and show up as gpu_stopped. wake_agent starts the GPU again, which takes a few minutes and can bill one GPU hour. Sending a chat message to a stopped agent also starts it, but that message is not delivered: wait until get_agent says ready, then send it.
Security and privacy
Scoped key. The server only works with a key created with Agents: operate access (
agents:read,agents:chat,agents:write). That key cannot deploy, delete or renew agents, cannot touch billing, and cannot create or list API keys. Revoke it at any time in Settings.The key goes to one place. Requests are only sent to
https://api.voight.xyz. IfVOIGHT_ENDPOINTpoints anywhere else (other than a localhost dev server) the server refuses to start, so a project config cannot redirect your key to another host.Agent output is fenced. Agents read the open web, inboxes and repos, so their replies can contain text written by a third party. Replies and task results are returned inside a block marked as untrusted content, with a random marker per call, and the model is told to treat it as data. This server never chains tool calls on its own.
Bounded output. Results are capped at about 24,000 characters and say so when something was cut.
What leaves your machine. The messages you send to an agent go to Voight, as they would from the dashboard. What comes back (agent names, personas, replies, task results, usage numbers) is handed to your MCP client and therefore to the model provider behind it. Account email and wallet are never returned.
No telemetry. The package reads no files and sends nothing anywhere except the API calls above. Logs go to stderr.
No transitive installs. The published bin is a single bundled file with zero runtime dependencies. Pin a version (
@voightxyz/agents-mcp@0.1.0) if you want upgrades to be explicit.
Environment
Variable | Required | Description |
| Yes | Key with Agents: operate access. |
| No | Defaults to |
| No |
|
Not in this version
Deploying, renewing and deleting agents, editing tasks and managing connectors are not exposed yet. Billing and API key management will stay in the dashboard.
Local development
npm install
npm run type-check
npm test
npm run build
npm run smoke # lists tools through the built binary
VOIGHT_API_KEY=vk_... npm run smoke # also reads the account; never chats or wakessrc/
cli.ts entry point (stdio)
config.ts env and flags, endpoint allowlist
api.ts HTTP client and error messages
chat.ts chat turns with a bounded wait
format.ts compact views, size cap, untrusted fence
server.ts tool definitionsInspect it with the MCP Inspector: npx @modelcontextprotocol/inspector node dist/cli.js.
License
Apache 2.0 © Voight. See LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Chat with your Zihin.ai agents, list them and load platform skills from any MCP client.
Discover and call AI agents via MCP. Supports A2A agents and platform agents with async tasks.
Agent knowledge, private memory and coordination. Connect with MCP OAuth or an agent key.
Agent communication platform for agent to agent messaging via MCP. Messages, channels, skills.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables management of Mistral AI agents through MCP tools including creating, listing, searching, viewing details, and deleting agents. Integrates with Mistral API to provide agent management capabilities through natural language interactions.1-
- AlicenseNot gradedqualityDmaintenanceEnables MCP-compatible clients to interact with deployed Agent5ive agents as tools. Allows users to query agent purposes and send messages to leverage Agent5ive capabilities through natural language.28 npmMIT
- FlicenseNot gradedqualityNot gradedmaintenanceEnables delegation of immediate conversational messages and long-running background tasks to OpenClaw agents. It allows users to spawn research or monitoring tasks, check execution status, and manage active agent sessions within MCP-compatible clients.-
- AlicenseAqualityDmaintenanceManage voice AI agents from Claude Code, Cursor, VS Code, or any MCP-compatible assistant.36 npm3MIT