Stone.jsDocs
Paradigm

Contexts

Agents

Agents are the newest place software runs, and the reason the Continuum was worth building now. When a model can call your application, the caller is no longer a person or a service. It is a reasoning system. Stone.js treats it like any other context: a cause, an intention, a resolution.

#An agent is a cause like any other

The principle

A tool call from an agent is structurally identical to an HTTP request: a named intention with arguments, expecting a result. If your architecture already separates domain from context, exposing it to agents is a new adapter, not a new codebase.

In Stone.js

There are two agents here: the one that calls your app at run time, and the coding agent that builds it with you. Both are contexts. The one that ships today is the builder: @stone-js/mcp-dev serves it the framework and your app; exposing the running domain as tools is the next context, coming.

#Serve the agent that builds with you

Add @McpDev() and the manifest gains one command, stone mcp. It starts an MCP server (stdio) that gives your coding agent the framework's knowledge and a live, read-only view of this app: its routes, commands, providers and config.

app/Application.tsdeclarativeimperative
import { StoneApp } from '@stone-js/core'
import { Routing } from '@stone-js/router'
import { McpDev } from '@stone-js/mcp-dev'

@McpDev()   // 'stone mcp' serves the framework + this app to your coding agent
@Routing()
@StoneApp()
export class Application {}
import { defineStoneApp } from '@stone-js/core'
import { routerBlueprint } from '@stone-js/router'
import { mcpDevBlueprint } from '@stone-js/mcp-dev'

export const App = defineStoneApp(
  { name: 'tasks' },
  [routerBlueprint, mcpDevBlueprint]
)
agent sessiontext
agent → tools/list
stone ← stone_routes · stone_app · stone_search · stone_docs
agent → stone_routes
stone ← GET /tasks (Tasks.list) · POST /tasks (Tasks.create)
agent → stone_search { query: "how do adapters collapse at runtime" }
The agent reads your app the way the framework does: one blueprint, one source of truth.

The full tool list, the --init flow that writes .mcp.json, and the bundled Agent Skills are in the MCP dev server docs. A machine-readable llms.txt map of the docs is served at the site root, so any model can load the whole mental model at once.


Stone.js

Your app exists in every runtime. Until you run it.

An open-source project by Stone Foundation
Created by Mr. Stone (Evens Pierre)