{"id":20038832,"url":"https://github.com/defra/coreai-mcu-core","last_synced_at":"2026-02-06T07:37:44.719Z","repository":{"id":229663140,"uuid":"777308312","full_name":"DEFRA/coreai-mcu-core","owner":"DEFRA","description":null,"archived":false,"fork":false,"pushed_at":"2024-09-18T09:02:29.000Z","size":109,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-11-13T10:39:07.462Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DEFRA.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-25T15:53:37.000Z","updated_at":"2024-09-13T13:13:30.000Z","dependencies_parsed_at":"2024-11-13T10:43:41.498Z","dependency_job_id":null,"html_url":"https://github.com/DEFRA/coreai-mcu-core","commit_stats":null,"previous_names":["defra/coreai-mcu-core"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Fcoreai-mcu-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Fcoreai-mcu-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Fcoreai-mcu-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DEFRA%2Fcoreai-mcu-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DEFRA","download_url":"https://codeload.github.com/DEFRA/coreai-mcu-core/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233648600,"owners_count":18708225,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T10:33:23.199Z","updated_at":"2025-09-20T08:33:22.750Z","avatar_url":"https://github.com/DEFRA.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# coreai-mcu-core\n\n## Prerequisites\n* Docker\n* Docker Compose\n* WSL2 (Windows only)\n\n## Services\n| Service |\n|---------|\n[coreai-mcu-documents](https://github.com/DEFRA/coreai-mcu-documents)\n[coreai-mcu-frontend](https://github.com/DEFRA/coreai-mcu-frontend)\n[coreai-mcu-generation-oai](https://github.com/DEFRA/coreai-mcu-generation-oai)\n[coreai-mcu-knowledge-pgv](https://github.com/DEFRA/coreai-mcu-knowledge-pgv)\n[coreai-mcu-responses](https://github.com/DEFRA/coreai-mcu-responses)\n\n## Setting up the project\n```bash\ngit clone https://github.com/DEFRA/coreai-mcu-core --recurse-submodules\n```\n\n## Updating submodules\n```bash\ngit submodule update --remote\n```\n\n## Environment variables\n| Name | Description | Required | Default |\n| --- | --- | --- | --- |\n| `MESSAGE_QUEUE_HOST` | Azure Service Bus namespace host | Yes | |\n| `MESSAGE_QUEUE_USER` | Azure Service Bus namespace SAS policy name | Yes | |\n| `MESSAGE_QUEUE_PASSWORD` | Azure Service Bus namespace SAS policy key | Yes | |\n| `MESSAGE_QUEUE_SUFFIX` | For local development - Use your initials | No | |\n| `AZURE_OPENAI_INSTANCE_NAME` | Azure OpenAI instance name e.g. openai-12345 | Yes | |\n| `AZURE_OPENAI_KEY` | Azure OpenAI key | Yes | |\n| `AZURE_OPENAI_API_VERSION` | Azure OpenAI API version | Yes | `2024-02-01` |\n| `EMBEDDING_MODEL_NAME` | Azure OpenAI embedding model deployment name. Note: This is not the model name, but the deployment name | Yes | |\n| `GENERATION_MODEL_NAME` | Azure OpenAI generation model deployment name. Note: This is not the model name, but the deployment name | Yes | |\n| `AZURE_STORAGE_USE_CONNECTION_STRING` | Use connection string for Azure Storage | Yes | `true` |\n| `AZURE_STORAGE_ACCOUNT` | Azure Storage account name (Azurite by default) | Yes | `devstoreaccount1` |\n| `AZURE_STORAGE_CONNECTION_STRING` | Azure Storage connection string (Azurite by default) | Yes | |\n| `AWS_BEDROCK_REGION` | AWS Bedrock region | Yes | |\n| `AWS_BEDROCK_ACCESS_KEY_ID` | AWS Bedrock access key ID | Yes (if Bedrock is enabled) | |\n| `AWS_BEDROCK_SECRET_ACCESS_KEY` | AWS Bedrock secret access key | Yes (if Bedrock is enabled) | |\n| `AWS_BEDROCK_MAX_TOKENS_TO_SAMPLE` | AWS Bedrock max tokens | Yes (if Bedrock is enabled) | 4000 |\n| `NOTIFY_API_KEY` | Gov Notify API key | Yes | |\n| `NOTIFY_TEMPLATE_ID_CORRESPONDENCE` | Template ID for Gov Notify | Yes | |\n| `CARBON_COPY_EMAIL_ADDRESS` | Email address for carbon copy for use with Gov Notify | Yes | |\n| `AUTHENTICATION_ENABLED` | Enable authentication | No | false |\n| `AZUREID_CLIENT_SECRET` | Azure ID client secret | No | |\n| `AZUREID_CLIENT_ID` | Azure ID client ID | No | |\n| `AZUREID_TENANT_ID` | Azure ID tenant ID | No | |\n| `DOCUMENTS_API_BASE_URL` | Base URL for Documents API | No | `coreai-mcu-documents` |\n| `RESPONSES_API_BASE_URL` | Base URL for Responses API | No | `coreai-mcu-responses` |\n| `KNOWLEDGE_API_BASE_URL` | Base URL for Knowledge API | No | `coreai-mcu-knowledge-pgv` |\n| `PROMPTS_API_BASE_URL` | Base URL for Prompts API | No | `coreai-mcu-prompts` |\n| `PERSONA_API_BASE_URL` | Base URL for Persona API | No | `coreai-mcu-persona` |\n| `NEXTAUTH_SECRET` | NextAuth secret | No | |\n| `LANGFUSE_SALT` | NextAuth secret | No | |\n\n\u003e [!NOTE]\n\u003e The `NEXTAUTH_SECRET` and `LANGFUSE_SALT` can be generated using the following command:\n\u003e ```bash\n\u003e openssl rand -base64 32\n\u003e ```\n\nCreate a `.env` file based on the `.env.example` file. The `.env` file should be placed in the root of the project.\n\nRun the following command to export the environment variables:\n```bash\nsource .env\n```\n\n## Running the services\nTo start the coreai-mcu services execute the following:\n```bash\n./scripts/start\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefra%2Fcoreai-mcu-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdefra%2Fcoreai-mcu-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefra%2Fcoreai-mcu-core/lists"}