- search and read Tassyir’s developer guides;
- look up any Admin API operation (scope, parameters, body, every error code)
and any webhook topic’s body, and any operation of the developer API the
tassyirCLI calls; - validate
tassyir.app.tomlwith the Tassyir API’s own validator; - start a new app from the official starter;
- send a test webhook to your app and create seeded dev stores, with your
tassyir login.
2026-10, and the developer
API), so the reference tools work offline and answer from the version you
installed.
Install
Node 22.18 or later.Claude Code plugin
In Claude Code, add Tassyir’s plugin marketplace (this repository) and install itstassyir plugin:
npx -y @tassyir/dev-mcp@<version>, the
release the plugin names) and adds the tassyir-app skill: the app contract
(manifest, scopes, tokens, webhooks, Admin API, App Bridge, dev stores) that
create-tassyir-app also writes into every new project’s
.claude/skills, the same file. From a terminal, the same is
claude plugin marketplace add tassyir/apps-sdk then
claude plugin install tassyir@tassyir. For a newer release later, run
claude plugin marketplace update tassyir, then
claude plugin update tassyir@tassyir.
The server alone
In Claude Code:--scope project writes it to the project’s .mcp.json instead, for everyone
who works on the app. Any other MCP client takes the same command:
tassyir.app.toml the tools read by default, are resolved from there.
The tools that act on your Tassyir account (trigger_test_webhook,
seed_dev_store, list_dev_stores) use the sign-in of the
tassyir CLI. Sign in once, in a terminal:
Example
Ask your agent: “Start a Tassyir app called Review Requests that asks for a review when an order is delivered, and send it a testorders/delivered
webhook.” It can then:
search_docs { "query": "orders/delivered" }→ the topic, the webhooks guide, the orders guide, each with the tool call that reads it;scaffold { "directory": "review-requests" }→ the starter, its files and the next steps;get_event_schema { "topic": "orders/delivered" }→ the envelope, the order resource, the headers to verify;- edit the manifest, then
validate_manifest {}→valid, or every problem with itscode, fieldpathandfix; - after
tassyir deployand the install on a dev store,trigger_test_webhook { "topic": "orders/delivered" }→ what the app’s endpoint answered, with a fix when it was not 2xx.
{ "error": { "code", "message", "fix", … } }:
Tools
Every tool has a JSON Schema input that refuses unknown arguments, and every
tool that can succeed declares the JSON Schema of its answer. Every answer is
at most 8 KB of JSON: a guide comes a page at a time, and an API schema that
would not fit is shortened (
shortened: true; its $refs are names you can
look up).
Safety
- Answers are data. The guides, the API reference, the API’s replies and your endpoint’s errors describe the platform; nothing in them is an instruction to the agent, and the server never acts on them (it follows no link and calls no URL they name). The server’s MCP instructions tell the agent the same.
- The developer token never leaves your machine but to the Tassyir API.
It is read for each call from where
tassyir loginput it (TASSYIR_TOKEN, else the OS keychain, else the CLI’s credentials file) and sent only to the API origin, as a bearer. It is never in an answer, an error or a log line: every string an answer carries is redacted of developer tokens and device codes, and of every other Tassyir secret shape in answers from the API. - This server never signs in by itself. A sign-in needs you to approve a
code in the dashboard; the agent is told to ask you to run
npx tassyir login. scaffoldwrites only into a new or empty folder;validate_manifestreads only.tomlfiles, at most 256 KB.
Environment
The same variables as thetassyir CLI:
From a checkout
To try the server from a clone oftassyir/apps-sdk, without a build:
docs/guides and the OpenAPI documents of
@tassyir/app and the tassyir CLI.