---
title: "Mcp Set Code Profile"
method: POST
path: "/v1/mcp/projects/{project_id}/code-profile"
tags: ["mcp"]
---

# Mcp Set Code Profile

`POST /v1/mcp/projects/{project_id}/code-profile`

## Request

- Base URL: `https://api.sonenta.dev`
- URL: `https://api.sonenta.dev/v1/mcp/projects/{project_id}/code-profile`
- Auth: none declared

Record which frameworks this codebase uses (mcp:*).

MCP twin of `POST /v1/projects/{id}/code-profile`. UPSERT — it REPLACES the
profile rather than merging, so a framework removed from the repo can
actually be cleared. A repo may legitimately report several at once.

An unknown framework name is a 422 listing the known set; nothing is written.

## Path parameters

- `project_id` string, required

## Request body

- McpCodeProfileIn
  - `frameworks` McpFrameworkIn[]
    - `name` string, required: One of: react, vue, svelte, next, astro, react-native, capacitor
    - `source` string, nullable: package.json | config | imports
  - `language` string, nullable
  - `meta` object, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sonenta/apis/sonenta-api.md) · [All operations](https://skmtc.dev/sonenta/apis/sonenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sonenta/apis/sonenta-api/revisions/f853ea49fb05?raw)
