Skip to main content

Shanoneにプログラムからアクセスする2つの方法

ほとんどのエージェント連携にはMCPサーバーを使うべきです——Cursor、Claude Code、その他のMCPクライアントはこれをネイティブに話します。ここで解説するREST APIは、その裏側にある機能そのものであり、MCPクライアントを介さずにスクリプト・バックエンドサービス・CIジョブから直接Shanoneを呼び出したい場合に便利です。実際、Shanone自身のローカルstdio MCPプロキシ(@duzzle/shanone-mcpとそのPython版)も、このREST APIをごく薄くラップしただけの実装になっています。

ベースURL

認証

外部からのAPIリクエスト(WebダッシュボードのセッションベースのJWT認証とは異なります)は、ShanoneのAPIキーを使って認証します。
キーの管理、スコープ設定、レート制限については認証を参照してください。

エンドポイントのグループ

Toolベンダー

GET /v1/tools/search、GET /v1/tools/list、GET /v1/tools/{tool_name}/schema、POST /v1/tools/{tool_name}/execute

Skillベンダー

GET /v1/skills、GET /v1/skills/{skill_id}、POST /v1/skills、PUT /v1/skills/{skill_id}、DELETE /v1/skills/{skill_id}

権限ベンダー

GET /v1/permissions/services、GET /v1/permissions/users/{user_id}、PATCH /v1/permissions/users/{user_id}/tools/{tool_name}、PATCH /v1/permissions/users/{user_id}/services/{service_name}、GET /v1/permissions/users/{user_id}/summary、PATCH /v1/permissions/users/{user_id}/batch

ヘルスチェック

GET /v1/health — shanone_health_checkの裏側にある、同じチェック
これらは同じ形をしたMCPメタツールに直接対応しています——GET /v1/tools/searchはshanone_search_toolsが内部で呼び出しているエンドポイントであり、POST /v1/tools/{tool_name}/executeはshanone_execute_toolに対応します。すでに使いたいMCPツールがわかっている場合、REST側のエンドポイントもほぼ同じ動詞を、少し形の違うURLに向けて使うだけです。
Shanoneのダッシュボード(Settings、API Keys、Webhooks、Integrationsなど)は、はるかに大規模なJWT認証の内部ルート群によって支えられています——これらは外部APIの一部ではなく、APIキーで直接呼び出すことを意図したものではありません。

例: 検索してから実行する

レスポンスの形式

ToolベンダーとSkillベンダーのRESTエンドポイントはJSONオブジェクトを返します。更新後のMCP検索もJSONテキストを返します。検索レスポンスの構造例(値とスキーマは説明用に簡略化):
GET /v1/tools/search は schema_limit(既定3、0〜5)で上位候補のスキーマを同梱します。合計24,000 UTF-8バイトを超える場合などは inputSchema の代わりに schemaRef を返します。詳しくはMCP検索リファレンスを参照してください。 実行結果の外側の形式はREST・MCPの実装によって異なります。status、success、reasonなどの外側の結果と、外部サービスの結果を確認してください。

レート制限

いずれもAPIキーごとにSettings → API Keysから設定変更でき(最大1,000/分、1,000,000/日まで)、どちらかを超えるとRetry-Afterヘッダー付きで429が返されます。

次のステップ

認証

APIキーの形式、スコープ設定、IP許可リスト、ローテーション

MCP Toolsリファレンス

同じ機能を、MCPのツール呼び出し側から見た説明